Please post your test code.

did you register the DLL? REGSVR32 HABobjects.DLL


I wrote the DLL. The following code works on my computer.
Code:
break on
$iRC=SETOPTION('WrapAtEOL','on')
$HABObject = createobject("HBullock.AdminObjects")
if vartypename($HABObject) <> "Object"
? "Not an object ("HBullock.AdminObjects"): " + @serror
endif

;Docs:
;
;You need to pass 4 parameters:
; 1. The name of the library from which you want to import the function.
; 2. The name of the function (as exported by the library).
; 3. The number and types of the arguments the function expects as input.
; 4. The type of the value returned by the function.
;
;Parameters 3 and 4 follow:
; I: value is an integer (int)
; N: value is a number (long)
; F: value is a floating point number (float)
; D: value is a double precision number (double)
; C: value is a char (char)
; P: value is a pointer (to a string, structure, etc)
;
;Parameter 4 could also be V for void
;
;$GetProcessID = $HABObject.Win32API ("kernel32", "GetCurrentProcessId", "", "I" )
; kernel32 is name of library
; GetCurrentProcessId is name of function
; There are no input paramters
; The function returns an integer



;This works great.
;------------------

$GetProcessID = $HABObject.Win32API ("kernel32", "GetCurrentProcessId", "", "I" )
? "Win32API call: " + @serror
? vartypename($GetProcessID)
$pid = $GetProcessID.Call
? "pid = " + $pid
?



Edited by Howard Bullock (2006-09-16 01:53 AM)
_________________________
Home page: http://www.kixhelp.com/hb/