Well ok,
If you're set on interrupting your code, one could set an error and build an
error response routine to accommodate cal. Thing is, where do you place the
error trap, at the key press? Anyway, Som'n like that.
rufus
-----Original Message-----
From: Shawn Fessenden [mailto:shawn@testech-ltd.com]
Sent: Friday, July 30, 2004 3:11 PM
To: VRF
Subject: [vrf] RE: Vee multithreading
> Cheers for that input but it does not seem to solve my problem.
Opposite problem, opposite solution Everything I added I left open.
Note however that the calibration thread is not back-mutexed to the test
thread. IOW if you're in the middle of a Cal you can still click Start. Just
add another global that monitors the state of the Cal thread and check it
before allowing the Start thread to continue.
This is a common problem and there's a kernel object explicitly made for
situations of this sort called a "mutex". Unfortunately that only works with
actual multithreading and it won't help with VEE.
-SHAWN-
---
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".
If you're set on interrupting your code, one could set an error and build an
error response routine to accommodate cal. Thing is, where do you place the
error trap, at the key press? Anyway, Som'n like that.
rufus
-----Original Message-----
From: Shawn Fessenden [mailto:shawn@testech-ltd.com]
Sent: Friday, July 30, 2004 3:11 PM
To: VRF
Subject: [vrf] RE: Vee multithreading
> Cheers for that input but it does not seem to solve my problem.
Opposite problem, opposite solution Everything I added I left open.
Note however that the calibration thread is not back-mutexed to the test
thread. IOW if you're in the middle of a Cal you can still click Start. Just
add another global that monitors the state of the Cal thread and check it
before allowing the Start thread to continue.
This is a common problem and there's a kernel object explicitly made for
situations of this sort called a "mutex". Unfortunately that only works with
actual multithreading and it won't help with VEE.
-SHAWN-
---
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".
Well, no worries there anyway. I downloaded the source and looked at the
.idl file. IModbusSrv is definitely derived from IDispatch so that's ok.
> (I had to use full name, version independent gives error)
That's odd, but then again I've had some problems with using VC++ built
controls and libraries too. Don't understand it. It's like DllRegisterServer
is not complete somehow. Also, I've noticed that there's no
DllUnregisterServer function. That's particularly odd. These functions are
both wizard generated from templates (not C++ templates - just good old
char-replacement types). I guess the templates are somewhat questionable!
But anyway, you're doing everything right. The .ComPort member is clearly
defined in the .idl right at the top. The only thing I don't like about it
is the parameter is defined as short. You can try MBS.ComPort = asInt16(1);
but Automation should be taking care of the translation for you. If that
doesn't work then there's something else having a problem - the source is
huge and tracing through it would be quite the task.
> Basically, what I want to do is make this work in Vee6 if possible.
I don't see why it shouldn't work. You might get stuck "casting" parameters
to the proper types but it all looks ok. If asInt16 works, take a look at
all the members with OleView and note all those with short parameters: those
are the ones you'll need asInt16 on.
> On the other hand, is there any other solution for Modbus for VEE?
I'm sure I've seen this before. You might want to search for BodyContains =
modbus
Most of the results will be questions, but I'm almost positive there were a
few answers too.
-SHAWN-
---
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".