01-28-2011 08:18 AM - edited 01-28-2011 08:24 AM
Hi ALL,
I have an issue here. I have developed a VB .net Code that Will call Diadem 10.2 and pass information to Diadem and call a SCRIPT. This application was workign fine in Windows 7 machines and other XP machines i have installed. But when i tried to install this in the client Machine-> Diadem Loads ( i can see this in the task manager) but it is not responding. It niether Run the script i have passed nor it writes any Log.!!!
Normally when we run diadem it uses around 50MB of the Main memory and it is visible in the Task Manager. In this case as soon as DIAdem launches it just uses 16 MB of Memory.
Only difference i can see in Local machine and client machine is that DIAdem they have is having temporary licence.
Will this cause an ISSUE? when i manually run Diadem i'm not getting msgs saying about the license.
With regards,
Skb
01-29-2011 09:28 AM
Hi Skb,
This scenario should work fine with an evaluation license for DIAdem. What happens if (for debugging pursposes) you start a DIAdem instance manually on the client computer, leave the DIAdem instance running, then try your .NET application to connect to that already running DIAdem instance with ActiveX? You might also see DIAdem not respond to the ActiveX command if its Desktop.DDD file stores a reference to immediately start a time-consuming VBScript-- in that case the ActiveX command would have to wait until the VBScript is done before you would see anything happen. Another option to try is to uninstall and reinstall DIAdem 10.2 on the client computer, but make sure in that case that you manually run DIAdem once before trying to connect to it with ActiveX.
Brad Turpin
DIAdem Product Support Engineer
National Instruments
01-31-2011 01:29 AM
Hi,
I forgot to add one more thing, the machine I'm trying on is having Windows 2003 Server OS and i'm running it as Administrator.
As you said i have looked in to the DDD file and noticed no VBS files are called other than the default VBS file . I felt like Diadem is trying to communicate something when it loads (as i said only 16 MB of memory is used), But I was not able to see it. I tried to bring on the Activity Icon , but since this is running as a service that Activity icon is not coming up.
Let me know if u know something about it.
Regards,
SKB
01-31-2011 02:20 AM
hi ,
Also to add i have tried reinstalling the Diadem and Ran it before running the my code. Still the result is same.
With regards,
SKB
01-31-2011 07:36 AM
Hi SKB,
I have never tried to communicate to DIAdem through ActiveX while it was running as an Administrator service on Windows 2003 server. I do understand the advantages of this setup, and that may be perfectly fine, but at this point we're fishing for clues. For debugging purposes, can you try it on that same Windows 2003 server computer with DIAdem running in a user account (Administrator would be ideal), i.e. NOT as a service?
Brad Turpin
DIAdem Product Support Engineer
National Instruments
02-01-2011 07:09 AM
Hi,
I can understand that. But if someone gets some kind of resolution. please let me know.
There might be two reasons.
1. Diadem is trying to interact user with some message there by stopping the Further Execution
2. The other problem here may be oDIAdem.CmdExecuteASync(sVariables). sVariables has the Path to VBS file. I think CmdExecuteASync is not working proeprly. But i checked the status of this call and it showed TRUE. So the call is made and the variable is passed. But Diadem stays inactive.
With regards,
SKB
02-01-2011 11:23 PM
Hi SKB,
I was also wondering about DIAdem or the VBScript popping up a dialog that there is no interactive user to service. For debugging purposes, why don't you call DIAdem's ActiveX server and immediately show DIAdem with the following command so that you can see what's going on. Also for debugging purposes, I'd recommend you call synchronously instead of asynchronously:
oDIAdem.CmdExecuteSync("WndShow('SHELL', 'MAXIMIZE')")
Also note that you need to pass more than the script path in order to start a script:
oDIAdem.CmdExecuteSync("ScriptStart('Path_To_VBScript_File')")
The single quotes ( ' ) are intentional and necessary,
Brad Turpin
DIAdem Product Support Engineer
National Instruments
02-07-2011 06:29 AM
Thank you Brad For the reply. I will try that out.