xrev.dll (OpenInsight 32-bit Specific)
At 25 MAR 2003 05:05:13PM Bob Yerkes wrote:
Dim oInsight As New RevSoftLib.Revelation
Dim oEngine As Object
Dim oQueue As Object
retval=oInsight.CreateEngine(oEngine, "VB", "SYSPROG")
retval=oEngine.CreateQueue(oQueue, "BOB", "SYSPROG", "SYSPROG", "")
retval=oQueue.CallSubroutine("TESTPROC", "")
retval=oQueue.CloseQueue()
retval=oEngine.CloseEngine()
I am trying to use the COM object and I a running into the following error: "Method 'CreateEngine' of Object 'IRevelation' failed" on the line I do the .CreateEngine.
If I run it a second time I get error 38. Which tells me it alread exists. I run it a third time it locks my system and says COM system has stopped responding.
Where is the documentation for this? I checked "New Features for 4.1" and it's not there. It was mentioned that there was a VB/PHP/etc. examples anyone know where this might be?
I can't tell you how nice this would if it worked.
![]()
Thanks,
Bob
At 25 MAR 2003 09:17PM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:
http://www.revelation.com/__8525656100571cbb.nsf/0/c8128506f7a146f985256cca007a0a6d?OpenDocument
Steve
World Leaders in all things RevSoft
At 26 MAR 2003 12:25PM bobyerkes wrote:
Ok, Maybe I am missing something. I am launching the engine using the following command.
y:\vp\OENGINE.exe /sn=\\.\VB SYSPROG
I am using the VB code sprezz posted in the previous post.
Result=Revelation.CreateEngine(Engine, "\\.\VB", "SYSPROG", 1, 1)
I get a result of 0, but the Engine Variable is empty?
I am not that familiar with how Named Pipes work, do I need to set something up on my machine before I can use a named path? Do I need to set registry values to tell the engine what to do or where to go?
Thanks for the VB example.
Bob
At 26 MAR 2003 12:41PM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:
Bob,
What exactly are you trying to do? Are you trying to get the COM object to create an engine for you or are you trying to attach to a pre-existing engine?
The Engine functions are documented in the OpenEngine.chm file supplied with OI 4.13. Also what OS are you running? There were issues with Win98 and Xrev.DLL pre 4.13
World leaders in all things RevSoft
At 26 MAR 2003 01:00PM Pat McNerthney wrote:
Bob,
I would recommend letting the CreateEngine call launch the OpenEngine executable for you. Then if something in this area changes, it shouldn't effect your code.
If you are going to be creating a new engine and not attaching to an existing engine, make sure that the current working directory has been established to the root directory of your OI installation.
Named Pipes only work on NT class operating systems (WinNT 4.0, Win2000, WinXP). If you want to create or attach to an out-of-process engine on a Win98 class operating system, you must use a TCP/IP port, which is indicated by uses a numeric port number instead of the alpha-numeric named pipe name in the server name.
Pat
At 26 MAR 2003 02:28PM Bob Yerkes wrote:
It really doesn?t matter to me how I connect to the engine. If I have to run it I will or if it will create it I will let it.
I tried using ports instead of named pipes but to no avail. I originally thought it would create the engine automatically but I started doubting that and started launching before hand thinking I was mistaken.
I am running on a Windows XP machine, I am going to try it on another machine just to make sure it?s not just my machine causing the problem.
I assume if I wanted to use ports instead I would use something like this:
Result=Revelation.CreateEngine(Engine, ":7777", "SYSPROG", 1, 1)
What we are trying to do:
We are in the research phase write now and it would be nice to be able to get information and store information from other programs and sources in OI. The ODBC driver is read only and OECGI is not as flexable as a COM object would be. In the past the only way we could do this was through XML, text files, or DDE.
At 26 MAR 2003 02:30PM Bob Yerkes wrote:
It really doesn?t matter to me how I connect to the engine. If I have to run it I will or if it will create it I will let it.
I tried using ports instead of named pipes but to no avail. I originally thought it would create the engine automatically but I started doubting that and started launching before hand thinking I was mistaken.
I am running on a Windows XP machine, I am going to try it on another machine just to make sure it?s not just my machine causing the problem.
I assume if I wanted to use ports instead I would use something like this:
Result=Revelation.CreateEngine(Engine, ":7777", "SYSPROG", 1, 1)
What we are trying to do:
We are in the research phase write now and it would be nice to be able to get information and store information from other programs and sources in OI. The ODBC driver is read only and OECGI is not as flexable as a COM object would be. In the past the only way we could do this was through XML, text files, or DDE.
At 26 MAR 2003 02:32PM Bob Yerkes wrote:
It really doesn?t matter to me how I connect to the engine. If I have to run it I will or if it will create it I will let it.
I tried using ports instead of named pipes but to no avail. I originally thought it would create the engine automatically but I started doubting that and started launching before hand thinking I was mistaken.
I am running on a Windows XP machine, I am going to try it on another machine just to make sure it?s not just my machine causing the problem.
I assume if I wanted to use ports instead I would use something like this:
Result=Revelation.CreateEngine(Engine, ":7777", "SYSPROG", 1, 1)
What we are trying to do:
We are in the research phase write now and it would be nice to be able to get information and store information from other programs and sources in OI. The ODBC driver is read only and OECGI is not as flexable as a COM object would be. In the past the only way we could do this was through XML, text files, or DDE.
At 26 MAR 2003 02:46PM Bob Yerkes wrote:
It really doesn?t matter to me how I connect to the engine. If I have to run it I will or if it will create it I will let it.
I tried using ports instead of named pipes but to no avail. I originally thought it would create the engine automatically but I started doubting that and started launching before hand thinking I was mistaken.
I am running on a Windows XP machine, I am going to try it on another machine just to make sure it?s not just my machine causing the problem.
I assume if I wanted to use ports instead I would use something like this:
Result=Revelation.CreateEngine(Engine, ":7777", "SYSPROG", 1, 1)
What we are trying to do:
We are in the research phase write now and it would be nice to be able to get information and store information from other programs and sources in OI. The ODBC driver is read only and OECGI is not as flexable as a COM object would be. In the past the only way we could do this was through XML, text files, or DDE.
At 26 MAR 2003 03:13PM Pat McNerthney wrote:
Bob,
This simplest way to initially connect to an engine is to manually start the engine yourself. What I usually do is open a Command Prompt windows (remember the command line?), change to the OI root directory, and then start up an OpenEngine from there.Here is a test script that I have used on a VB Click event to test with:Private Sub Command1_Click() Dim str, str2 As String Dim i As Integer Dim iLen As Integer Dim Buf() As Byte 'Create the core Revelation object. Dim Revelation As Object Set Revelation=CreateObject("RevSoft.Revelation") 'Change the directory if not connecting to an existing engine. 'ChDir "c:\oi32bit41" 'Create an OpenEngine. Dim Engine As Object Dim Result As Long Result=Revelation.CreateEngine(Engine, "SYSPROG", "SYSPROG", 0, 0) If Result=0 Then 'Create an active Queue. Dim Queue As Object Result=Engine.CreateQueue(Queue, "MYQUEUE", "SYSPROG", "SYSPROG") If Result=0 Then 'Call a Basic+ function... Dim ReturnValue As String Result=Queue.CallFunction(ReturnValue, "GET_APP_INFO", "SYSPROG") Queue.CloseQueue End If Engine.CloseEngine End If Set Queue=Nothing Set Engine=Nothing Set Revelation=Nothing End SubPat
At 26 MAR 2003 03:14PM Pat McNerthney wrote:
Oh yea, and double check that the proper XREV.DLL is registered.
Pat
At 27 MAR 2003 11:01AM Bob Yerkes wrote:
Thank you for the example code it was helpful to let me know I was on the right track, I did get it working. Not sure what exactly the problem was. It seems like it's not very forgiving if you pass it something incorrect. 1 out of 2 times it would lock my system up solid. Tried it on our IIS server and using it via ASP and it managed to crash IIS if I passed it anything that was incorrect similar to VB 6.
It?s is impressively fast, just don?t make any mistakes or you?re in trouble. Thanks again for the help.
Bob