可以利用 VBS 搭配 WMI 來處理
<pre class="c" name="code">
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\ComputerName\root\cimv2")
'刪除所有分享資料夾
Set SelectShares = objWMIService.ExecQuery ("Select * from Win32_Share")
For Each objShare in SelectShares
objShare.Delete
Next
'刪除某個指定的分享資料夾
Set SelectShares = objWMIService.ExecQuery ("Select * from Win32_Share Where Name = 'MyShareFolderName'")
For Each objShare in SelectShares
objShare.Delete
Next
'刪除某個指定的分享資料夾
Set SelectShares = objWMIService.ExecQuery ("Select * from Win32_Share Where Name = 'MyShareFolderName'")
For Each objShare in SelectShares
objShare.Delete
Next
MyShareFolderName 這是不是資料夾的名稱?
如上的指令行不通!
MyShareFolderName 指的是分享的名稱
可以參考 MSDN 上的說明
Win32_Share class
我公司我是周未都是把分享資料夾停用
@echo off
net share "Foldername" /delete /YES
存成.bat 就可以
至於再開啟時我是用
@echo off
net share "Foldername=x:\sharefoldername /grant:users,change /grant:users
但我碰到一個問題 開啟 分享檔案時即時給user full 權限也刪除不了其他使用者 建立的檔案 還有有時還進不去 分享的folder 求高手
FYI
http://support.microsoft.com/kb/245117/zh-tw
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
AutoShareServer 和 AutoShareWks
dword:0