DPlot Forum Index DPlot
http://www.dplot.com
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Excel Add-In Error 453

 
Post new topic   Reply to topic    DPlot Forum Index -> Excel
View previous topic :: View next topic  
Author Message
dghoskins



Joined: 06 Oct 2009
Posts: 3

PostPosted: Tue Oct 06, 2009 10:57 am    Post subject: Excel Add-In Error 453 Reply with quote

I have installed DPlotJr with the Excel Add-In. The Add-In is listed as an Active Application Add-In with the correct path to the DPlotLib.XLA file. When I try the Examples worksheet, I get the following VBA error message:

Error 453
Can't find DLL entry point DPlot_Plot8 in DPlotLib

DPlotLib.dll and DPlotLib.xla are installed in "C:\Documents and Settings\Dennis\Application Data\Microsoft\AddIns"

I am using Excel 2007 and Win XP SP2.

Any suggestions?

Thank you.
Back to top
View user's profile Send private message
DPlotAdmin
Site Admin


Joined: 24 Jun 2003
Posts: 2310
Location: Vicksburg, Mississippi

PostPosted: Tue Oct 06, 2009 12:54 pm    Post subject: Reply with quote

The only thing that occurs to me is that the DLL has been corrupted somehow. You can confirm whether that is the problem by right-clicking on dplotlib.dll in Explorer, selecting Properties, then the Digital Signatures tab. Select HydeSoft Computing in the Signature list, then click Details. If the file is OK, the next screen should say "This digital signature is OK." (And conversely, if it does NOT say that or if you don't have a Digital Signatures tab, something has happened to that file. In that case deleting the file and re-installing should solve the problem.)

If that isn't the problem... I don't know. That function is of course present in the DLL.

Edit: That last statement may not have been clear. That function is in the DLL, so the error message indicates to me that something bad has happened to the DLL. The only other possibilities I can think of I would think would give different error messages, but perhaps VBA is confused: 1) You have some sort of odd security setting that... well... nobody else does and it is preventing access to the DLL, or 2) All of the Add-In files are on a server and you're running from a client system. Actually that should still work, but I've seen a few goofy results from others trying to do this. If your Excel, and more importantly the Add-In files, are on a server rather than your local machine, please let me know.
_________________
Visualize Your Data
support@dplot.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
dghoskins



Joined: 06 Oct 2009
Posts: 3

PostPosted: Wed Oct 07, 2009 2:57 pm    Post subject: Reply with quote

Before posting, I had uninstalled, downloaded, and re-installed with no change. The digital signature for the dll is okay.

I uninstalled, rebooted, downloaded, and re-installed with the same error message. I have installed on two other computers (Excel 2003 and Excel 2007) and those work without error.

I am able to run the dplotlib samples (btest.exe, etc.) successfully and can compile and run the powerbasic samples, so the dll would seem to be uncorrupted.

The problem is limited to the excel add-in - possibly something in the xla file? or vba?

Any other suggestions?

Thanks.

Dennis

EDIT

I just read your edit. All files are on my local machine. As for security settings in vba, I haven't yet run into issues with any other add-ins. When i open the example.xls, I enable macros.

Dennis
Back to top
View user's profile Send private message
DPlotAdmin
Site Admin


Joined: 24 Jun 2003
Posts: 2310
Location: Vicksburg, Mississippi

PostPosted: Thu Oct 08, 2009 8:25 am    Post subject: Reply with quote

Quote:
I am able to run the dplotlib samples (btest.exe, etc.) successfully and can compile and run the powerbasic samples, so the dll would seem to be uncorrupted.


Neither here nor there, just an FYI. We're talking about two different copies of the same DLL here. The example programs use the copy that is located in the same folder as those programs; Excel uses %APPDATA%\Microsoft\AddIns\dplotlib.dll. Those copies should be identical.

Quote:
Any other suggestions?


Not any good ones. You might search your hard disk for other copies of dplotlib.dll. If you at some time installed a much (much) older version of that DLL that didn't include DPlot_Plot8 and copied it to, e.g. the folder where excel.exe resides, then that version would be used instead of the correct %APPDATA%\Microsoft\AddIns\dplotlib.dll. But I think this is very unlikely.
_________________
Visualize Your Data
support@dplot.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
dghoskins



Joined: 06 Oct 2009
Posts: 3

PostPosted: Sat Oct 10, 2009 9:08 am    Post subject: Reply with quote

Your suggestion lead me in the right direction. There was a copy of dplotlib.dll in my C:\Windows\System32 that had a different MD5 hash than the new ones. Perhaps from an earlier installation?

Anyway, I renamed it temporarily and the Excel add-in now works.

Thanks for the help.

Dennis
Back to top
View user's profile Send private message
DPlotAdmin
Site Admin


Joined: 24 Jun 2003
Posts: 2310
Location: Vicksburg, Mississippi

PostPosted: Sat Oct 10, 2009 10:09 am    Post subject: Reply with quote

Thanks very much for the reply. This should have occurred to me sooner, but I had the DLL search order in my head turned around a bit. Just an FYI for anybody else that does this sort of thing, the order is:


  1. The directory from which the application loaded (in this case, the directory where excel.exe is located).
  2. The system directory (where you had an old copy of the DLL).
  3. The 16-bit system directory.
  4. The Windows directory.
  5. The current directory (set by the AddIn).
  6. The directories that are listed in the PATH environment variable.


I had thought that the current directory was the 2nd choice. Learned... or rather re-learned, something with this. On re-reading the MS docs, though, it appears that I did remember correctly, I'm just way behind the times. The order above is used when SafeDllSearchMode is enabled, which is the default state for XP SP2 and later versions. For earlier versions and for SafeDllSearchMode disabled, the search order is as I thought.

At the very least I need to add something to the docs about this, and re-emphasize to developers that the DLL should not be placed in the Windows system folders.
_________________
Visualize Your Data
support@dplot.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    DPlot Forum Index -> Excel All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group