alanfox

How to automate setting advanced sharing

8 posts in this topic

I want to be able to automate setting advanced sharing, public folder sharing and password protected sharing. I want to be able to do this via command line, vbscript, reg hack, ... However I can. I've googled and binged for days. Tried using regshot to look at before/after registry settings when I manually changed them. Nothing. Any help would be great. Or even if I can find where the settings are stored would be helpful. I can set network discovery and file and printer sharing with "netsh advfirewall firewall set rule group=" but there are no groups/rules for public folder sharing and password proteced sharing. Thank you.

0

Share this post


Link to post
Share on other sites

Try using AutoIT v3

Use its Au3Record.exe to record all your key strokes and mouse clicks to setup your "advanced sharing". Also use it to de-setup/remove the "advanced sharing". Then use Aut2Exe.exe which comes with the AutoIT setup to generate an executable file from the recorded ".au3" file. Use the generated exe files as you want. The task will be automated, you just have to run the exe file. Most AutoIT users record only keystrokes and not mouse clicks to perform their automated tasks. This is because if the screen resolution is different than the one on which the script was recorded then the mouse clicks will not work as the x & y co-ordinates will change and the click will happen somewhere else than the intended position. Another recommendation is to stop using the keyboard and mouse when the Automated task is happening through the generated file.

0

Share this post


Link to post
Share on other sites

The standard way to manipulate network shares is using WMI, either via vbscript or powershell (both of which are built into Windows)

Here's a quick example on technet's scripting guys that shows (and explains) how it works using powershell and here's the MSDN documentation for the Win32_Share class which you need to use.

TL;DR: it's a 2 liner in powershell:

$somevarname=[WMICLASS]"Win32_Share"
$somevarname.Create("c:\somepath","SomeShareName",0)

...unless you don't plan on doing anything else with shares, then you can even make it a one liner:

[WMICLASS]"Win32_Share"|%{$_.Create("c:\somepath","SomeShareName",0)}

It needs to be run elevated of course. You may want to change the share or NTFS permissions too.

0

Share this post


Link to post
Share on other sites

Thanks to everyone. I do not need a simple file share, I need to set advanced sharing options. I beleive that Au3Record may do what I want and I will try it. Thank you.

0

Share this post


Link to post
Share on other sites

I do not need a simple file share, I need to set advanced sharing options.

Like I said, this creates a standard network share (not some sort of simplified share). If you want to set advanced options like permissions then you have to to it after (it's not magic). WMI is the standard, built-in way that MS gives admins to administer network shares (and lots of other things).

0

Share this post


Link to post
Share on other sites

This is what I need to automate:

From Network and Sharing Center, select Advanced Sharing Options and on that windows set Public Folder Sharing and Password Protected Sharing toggles.

If I can do that from WMI I would be VERY happy. But I am unable to find WMI classes that affect these two settings.

0

Share this post


Link to post
Share on other sites

I'm sorry, I am either very thick, or I'm not properly explaining what I want to do.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.