Совместное использование папки во время установки с помощью Inno Setup

Можно ли создать сетевые папки общего доступа из установки innosetup?

С разрешениями и все?

Мое приложение использует 2 общих папки в клиентской сети, каждый должен иметь возможность чтения / записи в эти папки.

Мне нравится создавать это в настройках, чтобы не делать это вручную. Является ли это возможным?

1 ответ

Решение

Вы можете использовать Create метод класса Win32_Share.

попробуйте этот образец

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
Другие вопросы по тегам