Сценарий PowerShell не работает в InstallShield 2015? - PullRequest
0 голосов
/ 08 мая 2019

У меня есть код Installscript, в котором я выполняю сценарий PowerShell внутри функции.

Я пытался выполнить код installScript, написанный мной для выполнения сценария, передавая аргумент, присутствующий внутри переменных, но яне удалось выполнить.

Ниже приведен пример кода, который я пробовал установить.

svDir = SUPPORTDIR ^ "CreateISSVirtualApp.ps1";

StrRemoveLastSlash (svDir);

szCmdLine = "-File " +"\""+svDir+ "\\CreateISSVirtualApp.ps1" + "\" \"" + s`vVirtualDirName +"\"";

Delay (1);
Disable(WOW64FSREDIRECTION);
nResult = LaunchAppAndWait (szAppPath1, szCmdLine, WAIT);
Enable(WOW64FSREDIRECTION);

Я сохранил сценарий PS в Supportdir и указал путь к сценарию PS вПеременная szCmdline и хочет передать значение, присутствующее в переменной svVirtualDirName, но не знает, почему сценарий Power Shell не создает виртуальное приложение в ISS.

Значение в переменной szCmdline

"-File "C:\Users\E5377712\AppData\Local\Temp\2\{0F128485-8953-4D71-AF03-106EA0BA6344}\CreateISSVirtualApp.ps1" "XFormClient""

Если я запускаю сценарий powershell вручную, передавая agrument, он работает нормально, но с помощью сценария установки он не работает.

Буду очень признателен за любую помощь в этом.

Также я добавил код Power Shell для справки ниже -

param([string]$VirtualAppName)

Import-Module WebAdministration

# Code to get Installation Directory path
$CommonNode=Get-ItemProperty -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\SunePI\int\Platform\Common
$GetPath=$CommonNode.KSPath

$InstallDirPath= Split-Path $GetPath

#Appended new REST foldername to $RestPath
$WebRootDirPath= $Path + "\Web Client\www"


New-WebApplication -Name $VirtualAppName -Site 'Default Web Site' -PhysicalPath "$WebRootDirPath" -ApplicationPool DefaultAppPool
...