Sto iniziando a utilizzare PowerShell e sto creando funzioni in un file 'libreria' per migliorare la leggibilità che poi chiamo dal mio 'worker' script.Come chiamare una funzione in un altro script PowerShell quando si esegue lo script PowerShell usando 'Esegui con PowerShell'
=================== Library file ==========================
function ShowMessage($AValue)
{
$a = new-object -comobject wscript.shell
$b = $a.popup($AValue)
}
=================== End Library file ==========================
=================== Worker file ==========================
. {c:\scratch\b.ps1}
ShowMessage "Hello"
=================== End Worker file ==========================
L'esecuzione del 'lavoratore' script funziona bene quando nel PowerShell IDE ma quando right-click il file dei lavoratori e scelgo 'Corri con PowerShell' non riesce a trovare la funzione 'ShowMessage'. Entrambi i file si trovano nella stessa cartella. Cosa potrebbe succedere qui, per favore?
Si noti inoltre che richiamando lo script utilizzando '&', ad es. '&" c: \ scratch \ b.ps1 "' non importa le funzioni. – ashes999