I need some help with the following:
Assume I have a dll that has a function MyStrcpy that does exactly the
same as strcpy. The dll was written in VS 6 C++. The project would look
like this something like:
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID
lpReserved){
switch (ul_reason_for_call) {
....
}
return TRUE;
}
PLUGINDLL_API char *MyStrcpy(char *dst, const char *src) {
return strcpy(dst, src);
}
Now I want to use this in my windows project using VS 2005 and C#. Here
is what I would do:
IntPtr handle = LoadLibrary(pluginName);
IntPtr procaddr = (IntPtr)GetProcAddress(handle, "MyStrcpy");
MyDelegate delgt =
(MyDelegate)Marshal.GetDelegateForFunctionPointer(procaddr,
typeof(MyDelegate));
The question is how should the delegate look like and how do I use the
function after that. If you could give me some example that would be
great.
Rob
Mattias Sjögren - 22 Sep 2005 22:21 GMT
>The question is how should the delegate look like and how do I use the
>function after that.
Probably like this
delegate IntPtr MyDelegate(StringBuilder dst, string src);
Mattias

Signature
Mattias Sjögren [MVP] mattias @ mvps.org
http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
Please reply only to the newsgroup.