468,308 Members | 1,257 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,308 developers. It's quick & easy.

declare API without direct file name

hi, i need to have a declare statement for an API to call a method in it, the
only problem is that i dont neccessarily know where on the comp it will be. I
kno it will be in my application folder, but how do i say that in the
declares statement? for instance, i have this

Private Declare Sub AccCreateSession Lib "acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but it cant find it, ive also tried

Private Declare Sub AccCreateSession Lib "..\acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but that doesnt work either.....how can i do this?
--
-iwdu15
Aug 10 '06 #1
5 2112

iwdu15 wrote:
hi, i need to have a declare statement for an API to call a method in it, the
only problem is that i dont neccessarily know where on the comp it will be. I
kno it will be in my application folder, but how do i say that in the
declares statement? for instance, i have this

Private Declare Sub AccCreateSession Lib "acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but it cant find it, ive also tried

Private Declare Sub AccCreateSession Lib "..\acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but that doesnt work either.....how can i do this?
What error do you get exactly? The declare will find the dll as long
as it is in the search path, and by default the current directory is in
that path....

--
Tom Shelton [MVP]

Aug 10 '06 #2
"iwdu15" <jmmgoalsteratyahoodotcomschrieb:
hi, i need to have a declare statement for an API to call a method in it,
the
only problem is that i dont neccessarily know where on the comp it will
be. I
kno it will be in my application folder, but how do i say that in the
declares statement? for instance, i have this

Private Declare Sub AccCreateSession Lib "acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but it cant find it, ive also tried

Private Declare Sub AccCreateSession Lib "..\acccore.dll" Alias "#111" _
(<MarshalAs(UnmanagedType.LPStruct)ByVal Name As Guid,
<MarshalAs(UnmanagedType.IDispatch)ByRef session As Object)

but that doesnt work either.....how can i do this?
Are you really sure the DLL is in the directory where your executable file
resides? You may have to copy the DLL to your project's "bin" folder in
order to be able to start the application from within the IDE.

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Aug 10 '06 #3
im positive its there...i copied it myself. it was originally in a directory
off of C:\ but then to release my app, i copied to the Bin directory, and
changed the code to what i showed above. making sure i was running in Debug
mode, it wouldnt find the dll.....
--
-iwdu15
Aug 10 '06 #4
the dll is in the "bin" directory, as is the application. i get an error
saying it could not load the said module....but when i hardcode the path it
works
--
-iwdu15
Aug 11 '06 #5
il also add, if it helps, that this is a COM object. I have to declare it
like so to have the dll create an object for me. I also have it imported in
my references....if this helps at all
--
-iwdu15
Aug 11 '06 #6

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

9 posts views Thread by WalterR | last post: by
16 posts views Thread by didier.doussaud | last post: by
23 posts views Thread by mark.moore | last post: by
21 posts views Thread by Mark Cooney | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.