Guest cgchris99 Posted September 12, 2002 Posted September 12, 2002 I have a small app that was written in vb6 that calls a DLL that was written in C. I am having trouble even getting the new vb.net app to compile, let alone run properly. Here is the declaration in the 'C' source (I didn't write the 'C' dll) extern __declspec( dllexport ) long WINAPI IS_XferImage(HWND hWnd, BYTE *data, size_t dlen); Here is what I did in vb.net to declare the call Declare Function IS_XferImage Lib "CogISCtl" Alias "_IS_XferImage@12" _ (ByVal hWnd As Integer, ByRef data As Byte, ByVal dlen As Short) As Integer One of the problem I am having is getting the hWnd of the picturebox and passing it to this function. So I tried this myStatus = IS_XferImage(picture1.Handle.ToInt32, myData(myPos), maxLen) If I just use Picture1.Handle, I get an error. It says value of type "system pointer" cannot be converted to an integer Thanks for any advice Quote
*Gurus* divil Posted September 12, 2002 *Gurus* Posted September 12, 2002 Try altering the declare so that hWnd is passed as IntPtr instead of Integer, then just use Picture1.Handle. Quote MVP, Visual Developer - .NET Now you see why evil will always triumph - because good is dumb. My free .NET Windows Forms Controls and Articles
Recommended Posts