We really need more information to be able to help here. How is the function exported? It might be simplest for you to post the source for TestDLL, if possible, or barring that, the signature of Start from Dependency Walker (or Dumpbin).
ccall doesn't know anything about COM or C++. The former is somewhat tractable, the latter minimally so, especially if the DLL uses MSVC ABI. (in principle it should be possible to do full COM introspection and binding for dynamic COM interfaces in pure Julia, but I don't know of anyone who has tried to do so yet) In case it helps, I have some more examples of how to call Win32 functions, here: https://github.com/ihnorton/Win32GUIDemo.jl On Tue, May 5, 2015 at 4:45 PM, <[email protected]> wrote: > I am attempting to use ccall with to a function inside a class in a DLL. > > The function is "Start", and it is a member of "DSS", in DLL "TestDLL.dll" > > dlopen returns a pointer, but how do I reference the CLASS? I have seen > the example work for ccall: > > ccall((:GetKeyState,"User32"), stdcall, Uint16, (Ptr{Uint16},), 20) > > but I have tried both below. > > ccall((:Start, "TestDLL.DSS"), stdcall, Uint16, (Ptr{Uint16},), 0) > ccall((:DSS.Start, "TestDLL"), stdcall, Uint16, (ptr{Uint16},), 0) > > Thank you! >
