View previous topic :: View next topic |
Author |
Message |
Katy
Joined: 16 Jan 2007 Posts: 17
|
Posted: Sat Feb 10, 2007 19:24 Post subject: |
|
|
I think I'd mixed up a successful run and an unsuccessful one.
Failed run looks like this --
Output to nwnx_controllerd window
Code: |
NWN Extender 4 Server Controller V.0.0.6
(c) 2006 by Ingmar Stieger (Papillon)
visit us at http://www.nwnx.org
Trace: (TRACE_VERBOSE) Reading inifile nwnx.ini
Running in interactive mode.
Press enter to stop the controller.
NWNX will continue to run within nwnserver.
Trace: (TRACE_VERBOSE) Starting worker...
Trace: (TRACE_VERBOSE) Starting server executable C:\NWN2\\nwn2server.exe in C:\NWN2\
Trace: (TRACE_VERBOSE) IPC Server MyNWNXServer 2244 connecting (DDE)
Error: Failed to create connection to server 'MyNWNXServer 2244' on topic 'NWNX SERVER': a client's attempt to establish a conversation has failed.
Trace: (TRACE_VERBOSE) Client host="localhost" port="MyNWNXServer 2244" topic="NWNX SERVER" failed to connect
|
(last two lines repeat endlessly)
Output from hook DLL:
Code: |
NWN Extender 4 V.0.0.6
(c) 2006 by Ingmar Stieger (Papillon)
visit us at http://www.nwnx.org
* IPC Server MyNWNXServer 2244 started (DDE)
|
No nwnx.txt or xp_*.txt files are created. I get a "shutdown successful" message in the hook log when I manually stop nwnserver |
|
Back to top |
|
|
Papillon x-man
Joined: 28 Dec 2004 Posts: 1060 Location: Germany
|
Posted: Mon Feb 12, 2007 23:10 Post subject: |
|
|
This is getting a bit complicated, hope you are still with me .
Next, I would like to see what DDESpy shows. It's a debugging tool that shows what is going on between programs using DDE for communication (i.e., nwnx controller and server process in this case). You can enable all kinds of information logging with it - maybe an error shows up somewhere.
If you do not have it already (it was part of the Visual Studio 6.0 release), you can get the source code here:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcsample98/html/vcsmppviewer.asp
I do not know if there are binaries somewhere on the net... but building it should be straightforward. _________________ Papillon |
|
Back to top |
|
|
Gryphyn
Joined: 20 Jan 2005 Posts: 431
|
Posted: Mon Feb 12, 2007 23:37 Post subject: |
|
|
I've had something similar when developing my ODBC plugin.
The problem was that the plugins Init() call was returning false.
This should have been easy to diagnose, however the 'logging' that would normally be put to the log file doesn't get flushed from the buffer when Init() returns false.
. Something in the .INI file is broken (I had quotes around my path) or
. your Connection fails - causing Init() to return false;
Cheers
Gryphyn |
|
Back to top |
|
|
Papillon x-man
Joined: 28 Dec 2004 Posts: 1060 Location: Germany
|
Posted: Mon Feb 12, 2007 23:48 Post subject: |
|
|
Hold on, the DDE connection needs to be established before Init() is even called. This does not seem to be the case here. _________________ Papillon |
|
Back to top |
|
|
Papillon x-man
Joined: 28 Dec 2004 Posts: 1060 Location: Germany
|
Posted: Tue Feb 13, 2007 20:28 Post subject: |
|
|
While discussing with Gryphyn, I got some more ideas. I'd like to know what the output of the debugging version of the hooking DLL looks like.
- I am assuming that you are still creating the nwnx.txt logfile in startIPCServer() in a fixed place (like c:\nwnw.txt).
- Now please compile the NWNX4 Hook project in debug mode, which will get you a NWNX4_Hookd.dll.
- Delete NWNX4_Controller.exe and NWNX4_Hook.dll and make sure that you have only the "d" versions of both left.
- Start NWNX4_Controllerd.exe -interactive.
- In c:\nwnx.txt you should get something like this on a successful connect:
Quote: | NWN Extender 4 V.0.0.7
(c) 2007 by Ingmar Stieger (Papillon)
visit us at http://www.nwnx.org
* IPC Server MyNWNXServer 3948 started (DDE)
Debug: OnAcceptConnection("NWNX SERVER")
Connection accepted
OnPoke("NWNX SERVER","set_nwnx_home","D:\Projekte\NWNX4svn\bin\dist",30)
Trace: (TRACE_VERBOSE) Reading inifile D:\Projekte\NWNX4svn\bin\dist\nwnx.ini
Debug: Searching for function to hook
Debug: SetLocalString hooked at 0x518230
* Loading plugins...
Debug: Enumerating plugins in current directory
Debug: Trying to load plugin xp_mysql.dll
* Loading plugin xp_mysql.dll: Error during plugin initialization.
Debug: Trying to load plugin xp_sqlite.dll
* Loading plugin xp_sqlite.dll: Successfully registered as class: SQL
Debug: Trying to load plugin xp_time.dll
* Loading plugin xp_time.dll: Successfully registered as class: TIME
* Disabling general protection fault error dialog.
* NWNX4 activated.
* NWNX4 shutting down...
* NWNX4 shutdown successfull.
|
The crucial part is right at the top:
Quote: | Debug: OnAcceptConnection("NWNX SERVER")
Connection accepted |
This would be something to try even before messing around with DDESpy. _________________ Papillon |
|
Back to top |
|
|
|