Page 1 of 1
DB Monitor and Windows Service
Posted: Mon 11 Aug 2008 16:18
by baumsh
Hi,
I'd like to ask on how I could make the DBMonitor work when the application is running under a windows service, it seems that the login cridentials need to be the same as the service, however we have no control on the service part and we could not specify it to login as a specific user, however I'm wondering if we could do it the other way around and specify the login cridentials of the DBMonitor, which we do have access to and we could spcify the login details or launch it the way we want.
Also from previous posts it seems that I should be able to deploy the exe and dll to a clients machine and the setup is not needed in order to have the DBMonitor running, however if we just copy these 2 files we get an error that there is a version mismatch, however if we then run the install that actually installs the same files that caused us the problems if we copied it, it then works. We'd really like to avoid an install process here.
Regards,
Shloma Baum
Pioneer Interactive, Inc.
http://www.PioneerInteractive.com
Re: DB Monitor and Windows Service
Posted: Thu 14 Aug 2008 12:34
by Dimon
baumsh wrote:I'd like to ask on how I could make the DBMonitor work when the application is running under a windows service, it seems that the login cridentials need to be the same as the service, however we have no control on the service part and we could not specify it to login as a specific user, however I'm wondering if we could do it the other way around and specify the login cridentials of the DBMonitor, which we do have access to and we could spcify the login details or launch it the way we want.
You should not connect to DBMonitor. DBMonitor monitors all SQL clients running on the machine, where DBMonitor is executed.
baumsh wrote:Also from previous posts it seems that I should be able to deploy the exe and dll to a clients machine and the setup is not needed in order to have the DBMonitor running, however if we just copy these 2 files we get an error that there is a version mismatch, however if we then run the install that actually installs the same files that caused us the problems if we copied it, it then works. We'd really like to avoid an install process here.
DBMonitor uses COM object, which must be registered in system.
Therefore, to use DBMonitor you should register it on every machine, where you want to use it. You can do it with the following command:
regsvr32 DBMonitor.dll
Posted: Fri 15 Aug 2008 17:36
by baumsh
Hi,
Thanks a lot for your response!
I'm not sure I explained the situation enough. Bascially if the application to be monitored is a Windows Service then the DBMonitor does not intercept its calls, only if the app is running as a stand alone it shows. The situation is similar to this topic:
http://www.devart.com/forums/viewtopic. ... =dbmonitor but in my case I have no control over the service to specify which account it should run under, so my question is basically if there is a way I could specify under which account the DBMonitor should run so it DOES have rights to the Windows Service.
Hope it makes sense now.
Regards,
Shloma
Posted: Mon 18 Aug 2008 12:13
by Dimon
There's no possibility in DBMonitor to specify user account that will be runned under.
You can run service under another user account specifying needed user name in service properties.
Or you can write own appliction to run DBMonitor under needed account, using the CreateProcessWithLogonW function of WinAPI. You can find more detailed information about it in MSDN.
Posted: Mon 22 Sep 2008 13:32
by baumsh
Hi,
Is there no way to make that the DBMonitor should work even if its not running under the same account as the application that is being monitored?
I'm having a big problem here, as our application that is being monitored is installed as a Windows Service running under the LocalSystem account, and we have no control over that and cant be changed, now we've finally managed to get the DBMonitor to run under the LocalSystem account, but this account dosn't allow you to run the app interactively and although the dbmonitor is running, as I could see in the task manager it is not interactive and we can't see anything that is being monitored.
So back to my question if there is any way to make the DBMonitor work even though its not running as the same account as the application being monitored? otherwise its pretty much unusable for windows services or IIS applications, and I'd love to use it for our app.
Best Regards,
Shloma
Posted: Wed 24 Sep 2008 09:38
by Dimon
DBMonitor should work even if it is running under different account than does the monitored application. Try to check off the "Fast User Switching" mode in your Windows system.