0
Я написал пример программы, которая будет писать Hello World
и создал NSIS
файл и казнили, который отлично работает для меняNSIS модуль PowerShell импорта с параметрами
Мой .nsi
сценарий выглядит следующим образом
!include "x64.nsh"
Name "nsExec Test"
OutFile "nsExecTest.exe"
#ShowInstDetails show
Section "Output to variable"
nsExec::ExecToStack 'powershell.exe "& "Import-Module C:\PowerShell\Hello.psm1"'
Pop $0
Pop $1
DetailPrint '"ImportModules" printed: $1'
SectionEnd
Который является печать записывающий хост согласно написанному, когда я его выполнил
Мой код в .psm1
файл
# Filename: Hello.psm1
Write-Host
Write-Host 'Hello World!'
Write-Host "Good-bye World! `n"
# end of script
Сейчас я пытаюсь добиться того же с параметрами, может кто-нибудь помочь мне
# Filename: TestParameter.psm1
function TestParam([string] $TestParam)
{
Write-Host
Write-Host '$TestParam'
Write-Host "Good-bye $TestParam! `n"
}
# end of script
Но шахта модуля файл, так как я могу это сделать – Dotnet
Не работал, когда я делаю это как сценарий к execute, '" ImportModules ": Import-Module: Невозможно найти параметр, который соответствует имени параметра 'TestParam'. В строке: 1 char: 58 + ... rt-Module C: \ PowerShell \ TestParameter.ps1 -TestParam Hello-W ... + ~~~~~~~~~~ + Категория: InvalidArgument: (:) [Import-Module], ParameterB indingException + FullyQualifiedErrorId: NamedParameterNotFound, Microsoft.PowerShell.Comm ands.ImportModuleCommand Завершена ' – Dotnet
@Dotnet не используйте' Import-module' командлет, я намеренно удалил его из примера в моем ответе –