0
是否可以通過innosetup安裝創建網絡共享文件夾?在使用Inno Setup安裝期間共享文件夾
有權限和所有?
我的應用程序在客戶端網絡中使用2個共享文件夾,每個人都必須能夠讀/寫這些文件夾。
我喜歡在設置中創建它,以避免手動執行此操作。 IT可能嗎?
是否可以通過innosetup安裝創建網絡共享文件夾?在使用Inno Setup安裝期間共享文件夾
有權限和所有?
我的應用程序在客戶端網絡中使用2個共享文件夾,每個人都必須能夠讀/寫這些文件夾。
我喜歡在設置中創建它,以避免手動執行此操作。 IT可能嗎?
您可以使用Win32_Share類的Create
方法。
試試這個樣本
Const
FILE_SHARE = 0;
MAXIMUM_CONNECTIONS = 25;
function CreateShared(const Path, Name, Description : string):Integer;
var
FSWbemLocator: Variant;
FWMIService : Variant;
FWbemObjectSet: Variant;
begin
FSWbemLocator := CreateOleObject('WBEMScripting.SWBEMLocator');
FWMIService := FSWbemLocator.ConnectServer('', 'root\CIMV2', '', '');
FWbemObjectSet := FWMIService.Get('Win32_Share');
Result:=FWbemObjectSet.Create(Path, Name, FILE_SHARE, MAXIMUM_CONNECTIONS, Description);
end;
並以這種方式
Err:= CreateShared('C:\Foo', 'MyShare','This is a public shared folder'); //0 indicates Success
感謝你爲這個代碼,這是有幫助的使用,但我還需要創建一個讀/寫公衆股,這似乎需要一個Win32_SecurityDescriptor,我找不到任何相關的例子。任何想法或鏈接如何做到這一點將不勝感激。 – 2012-08-06 20:09:29
@RRUZ此代碼使用讀取權限創建它。我們如何設置讀寫? – syloc 2014-09-03 16:05:42
您必須使用相同WMI類的'SetShareInfo'方法。 – RRUZ 2014-09-03 16:40:16