How to stop a printer from being shared

Hello

I set up a virual printer in my program.
I only want this printer to be available on the machine it was installed.
I do not want the printer to be shared accross the network. Is there any way to prevent this

Regards
auk_ieAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

DanRollinsCommented:
It won't be shared unless somebody shares it, will it?   After your program sets it up, right-click it in the Printers Control Panel and examine the "Sharing..." options.  It should be set as "not shared" by default....  

Can you try that and let me know what you have found?

If you want to prevent people from messing around with your settings and sharing it when you are not looking, then you probably have to limit acess to only admin users or something like that.

-- Dan
auk_ieAuthor Commented:
Hello Dan, Yes ofcourse I know how to share a printer. My Installer sets up a virtual printer. I basically need to limit this number of clients that can connect to this printer (I would be happy to award you an additional 500 points if you could tell me how to do this) or as the above question says I need to prevent my users (Administrators included) to come in and share this printer from the printers property sheet.

Ralf KlattEmployee in Civil ServiceCommented:
Hi,

What OS are we talking about?
How are resources set up?
What priviledges do you have?


Best regards, Raisor
Fundamentals of JavaScript

Learn the fundamentals of the popular programming language JavaScript so that you can explore the realm of web development.

auk_ieAuthor Commented:
I am working with windows 98 and 2000. The virtual printer is setup using the default microsoft postscript drivers. I have written a port monitor the printer uses to accomplish its task. The install program has administrator rights so I can programtically execute any windows administration task.
auk_ieAuthor Commented:
I suppose one possible solution might be to get the devmode structure when the dll is called and disble the network sharing if it is enabled. But what I really want to know is if there is any way to share the printer out to say a maximum of ten clients.

DanRollinsCommented:
If you can find a way to disable it, then it should be easy to track a counter  -- say in the registry -- of the number of users who are currently using it.  It would be more difficult to disallow *potential* access.  Probably the best way would be to keep track of each user that tired to use it.  Compare that user name to a list.  If the name is not yet on the list, add it -- unless the list already has 10 users on it.  

With that scheme you would also need an administration facility to allow a network administrator the ability to delete users from the list etc.

In general, it is best to do everything possible to make using your printer EASIER, so IMHO, any such scheme would be a step in the wrong direction.

-- Dan

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Development

From novice to tech pro — start learning today.