|
RR Won't Start when Called from Code in 64 bit (RR_COM_API_64.dll) JHao from United States [10 posts] |
7 year
|
Hi,
In the past, I can call RR Startup() method successfully in 32 bit from my code (C#) without any issue. However, after I changed to 64 bit, RR won't start with the same code. I have to manually start RR first and then I can run my code.
Can you let me know what I am missing? Here is the code related to RR Startup.
Thanks,
**************************************
API_Wrapper rr = new API_Wrapper();
...
if (rr.Startup() == VARIANT_TRUE)
{...}
else
{...}
**************************************
|
|
|
Steven Gentner from United States [1446 posts] |
7 year
|
JHao,
In the past the 64 bit version of the COM object would just look for the 64 bit version of RR. As you probably just had the 32 bit version installed it wasn't finding the application.
We just made an update to have the 64 bit version default back to run the 32 bit version if the 64 bit version of the application was not found. That should take care of your particular issue.
You will need to download the latest version to get this update.
Thanks,
STeven.
|
|
|
Anonymous |
7 year
|
Hi STeven,
Thanks a lot for the prompt response.
This is what I did before. I uninstalled 32-bit version and then installed and registered 64-bit version. However I have to start RR manually first and then I can run my C# code. This issue also repeats in another computer.
This morning I upgraded my RR to latest version (2.83.22) and RR indeed start at background when I run my code. However another issue comes up. In our images we have up to 96 circles and we want to know the centers of all the circles (see code below). Before the upgrade, I have no issue at all. At upgrade, the program get the correct circleCount but freeze at "string circleLocationStr = _roboRealmServer.GetVariable("CIRCLES");". So I stop RR with Task Manager and then start RR manually. The same thing happens again. My code just stop at the same location.
Your help is highly appreciated!
Thanks,
**********************************************************
...
string circleCountStr = _roboRealmServer.GetVariable("CIRCLES_COUNT");
int circleCount = Convert.ToInt32(circleCountStr);
string circleLocationStr = _roboRealmServer.GetVariable("CIRCLES");
...
**********************************************************
|
|
|
Steven Gentner from United States [1446 posts] |
7 year
|
JHao,
Our mistake ... we accidentally were truncating that return value (to correct the API log display) and thus the wait is actually due to waiting for the rest of the values. This has been corrected in version .23 available now for download. This only would affect very long string values (such as when an array is converted to a string).
Thanks,
STeven.
|
|