AnsweredAssumed Answered

vrf DLL's and header files

Question asked by VRFuser on Jun 3, 2004
Shawn Fessenden wrote the following:

> Hi Graeme. Sorry ArBot was late yesterday. You found another bug that I'll
> be fixing this morning

Not a problem.  Glad to be helping iron out the difficulties!

>>BOOL C843_FUNC_DECL C843_STE(const int iId, char const  cAxis, double dOffset);
>
> Oh, bummer! This is basically:
>
> int __stdcall C843_STE(int iId, char cAxis, double dOffset);
>
> The problem is char. VEE won't do char and you can't use UInt8 either.
> Depending on what the dll was compiled with you might be able to get away
> with calling it an int though. One speed optimization is popping 32-bits for
> all parameters and masking off those bits not needed - it's faster than
> popping smaller chunks like 16 or 8 bits.

OK, so I've changed the char's for int's and left all the char*'s alone.  I've
also followed Rufus's advice and changed the BYTE's and WORD's for int's.  I've
even found the section in the Advanced Techniques manual:

<type> can be int, short, long, float double, int*, char*, short*, long*,
float*, double*,char**, or void.

But I'm fairly sure there should be a comma between the first float and double.

Now, the next problem is that I get an Vee error 716 (sytem error 126) when it
tries to run the dll.  I know this is related to dependencies, but I don't know
what my dll depends on.  I'm assuming that it will be some windows stuff to
allow it to talk to hardware on the PCI bus.

Of course, compounding these problems is the fact that all I've got is a dll, a
header file and some ropey documentation for me to 'evaluate it's compatibility
with VEE' before we go and splash some money on the hardware which will come
with proper docs and an installer to stick the DLL's in the right places and do
the proper registrations.

Ho hum... such is life

--
Graeme Hilton
Product Engineer

Schlumberger Sensa

---
You are currently subscribed to vrf as: rsb@soco.agilent.com
To subscribe send a blank email to "join-vrf@it.lists.it.agilent.com".
To unsubscribe send a blank email to "leave-vrf@it.lists.it.agilent.com".
To send messages to this mailing list,  email "vrf@agilent.com". 
If you need help with the mailing list send a message to "owner-vrf@it.lists.it.agilent.com".

Outcomes