how to monitor shared/network printers through windows service? - windows-services

I can retrieve all printers(including network printers) using windows application and also able to monitor them. I am using Print Spooler API's for them. But, if I run same code in windows service, I am not able to retrieve the network printers. Because network/shared printer will only be visible if you log in as specific Windows account and service is always login as 'SYSTEM' account.
Can we monitor these network printers using service?

Yes, you need to set the Windows Service's login as a user that has permission to manage the print queues on the server or workstations you're trying to monitor.
Select the "This Account" option on the "Log On" tab in the Services Control Panel and specify an account that has the necessary permissions.

Related

How debug ASP.NET Core MVC application using a mobile device?

I would like to access a debug session from my ASP.NET Core MVC application from another device. For instance, normally the iss is bound to localhost:port. How can I access this by using another network device at 192.169.0.???:port.
In other words... I want to press "F5" to start debug session. The same way I open a local browser and browse to the ISS localhost, I Would like to open a browser in another device (mobile or pc) in the same network and browse my application by network.
typing the developer machine ip from another machine does not works. By the way, typing the local ip address does not work either. It only works by typing "localhost".
Is that possible using visual studio 2017?
I think you want to use this remote debugging approach? It requires installing something on the remote server for it to work. You have to use Visual Studio so it requires a computer supporting that. Your subject says "mobile device", so I wasn't sure what you meant by that.

How to store client names that've accessed wifi via captive portal?

I'd like to setup a captive portal for an open wifi network, where users can access the internet by only entering their first names.
The aim of which is to build a list of first names currently connected to the network. Ideally this setup would remember MAC addresses and be able to greet returning clients (on an external display) the next time they automatically access the wifi network. (Can clients access the internet without having to re-login through captive portal?)
Thanks
One solution is to create an SQl database and store in it the first name and the MAC address of the client.
When the client log again you juste have to make a simple SQL request to find the name associated to the MAC address

The application trying to connect to QuickBooks is not supported while multiple instances of QuickBooks are running.

My application Connecting to QuickBooks 2013 with QBFC 12.
QuickBooks is running on a Server
Multiple users login to the same server and run QuickBooks from the server at the same time.
Application is also running on the Server.
Application connects to QuickBooks if only ONE user is logged in to the Server and has QB running.
If any other user logs in to the server and opens QuickBooks then the application does not connect.
Message Type: ERROR
Message: The application trying to connect to QuickBooks is not supported while multiple instances of QuickBooks are running.
at Interop.QBFC11.QBSessionManagerClass.BeginSession(String qbFile, ENOpenMode openMode)
at QBFSSyncManager.OpenQBSession()
Message: The application trying to connect to QuickBooks is not supported while multiple instances of QuickBooks are running.
at Interop.QBFC11.QBSessionManagerClass.BeginSession(String qbFile, ENOpenMode openMode)
at Turbo.THUB.QBProcess.QBFSSyncManager.OpenQBSession()
Solution that I found (if it applies to your problem):
If you are running your application from within Visual Studio (any version), make sure VS is NOT running as an Administrator.
This took me hours of hair pulling, name calling, forum screaming and a broken mouse to figure out.
My application works with multiple users, each with separate computers and separate instances of QB, all working in the same QB file via network file share.
I recommend move your application to a separate computer with its own QB instance and open the QB file remotely (not by remote desktop).
A common approach is to move Quickbooks to its own machine , and then write your application such that it receives requests from the other machines. The request can be processed and some sort of message returned. The message can be either a result set or a message letting the caller know if it worked, or if there was a problem.
Without knowing more about what you are trying to do, its hard to give specific advice.

QB PRO 2013 + Web Connector with closed company

I have Quickbooks Pro 2013 with the Web Connector installed.
I have created a sync application, granted permissions and everything, and I get the Web connector to exchange data between the company file (QB PRO 2013) and a web service successfully.
This happens only while QB PRO 2013 is OPEN. It doesn't require a logged in user, just keeping the application open is good enough for the Web Connector to connect to the company file and exchange data.
The thing is when I close the application the Web Connector starts complaining with a QBWC1013 error, saying:
Could not start QuickBooks. - second row in this link: http://www.zoho.com/crm/help/quickbooks/troubleshooting.html#sthash.hk3Dc8dl.dpuf
I'm used to QB POS, where I don't need the company open. Is this behavior different on non POS products ? Do I need to keep QB open all the time ? The path to the company file is OK as well as the syncing logic, we are able to connect, authenticate, exchange data both ways smoothly but only while QB is open (being logged in is not necessary, just keeping the app open).
It is like the Web Connector needs a running instance of QuickBooks to authenticate, because when it does so, QuickBooks flickers like if someone were logging in and then logging out.
The Web Connector application has been granted full access and Admin login to the company file.
Any thoughts :)
First, know that the very first time you connect things you have to make sure QuickBooks is open. If you haven't had QuickBooks open at all yet, make sure it's open the very first time to get things connected.
After that, QuickBooks does not have to be open, provided you have configured things correctly.
To answer your questions:
Is this behavior different on non POS products ?
Yes. Slightly.
Do I need to keep QB open all the time ?
No.
The path to the company file is OK as well as the syncing logic, we are able to connect, authenticate, exchange data both ways smoothly but only while QB is open (being logged in is not necessary, just keeping the app open).
Hit F2 in QuickBooks, and make sure that the path that's shown in the dialog window that pops up is EXACTLY the path that your web service is returning to the Web Connector. It must be EXACTLY the same.
If you're still having trouble, double-check that the app is allowed to connect in the QuickBooks settings, and that a valid user is chosen in the settings, restart the computer, and try again.
If you're still having trouble, post your Web Connector logs (in VERBOSE mode: QuickBooks Web Connector - how to set VERBOSE mode) so that we can help you troubleshoot.

Communication between Windows service and applications in different user sessions

I have the following situation:
Windows Server environment with multiple user sessions.
Windows Service is listening on well known port.
Tray application in each user session which is started automatically.
Silverlight (SL) application is running in browser and communicating with Windows Service using sockets and predefined port.
My goal is the following: user interacts with SL application, SL application communicates to Windows service using sockets and afterward Windows service should communicate to proper tray application which located in the same user session like browser that initiate call.
Communication between Windows service and tray applications is planed to be done using named pipes.
Question: how to define/transfer names of named pipes to Windows service to establish right (windows service -> tray app in correct user session) connection?
I don't find exact solution for described problem. But it is possible to use custom protocol concept.
SL application generates custom protocol links and registered application handles such links in user session. Afterwards such application can establish two-way communication with Windows Service that is listening on well-known port.

Resources