2017-03-29 3 views
0

와 EXE 파일 PowerShell을 변환합니다. 내가 name.exe -fullpath "\\192.168.1.120\share" -username "administrator" -password "test123"으로 .EXE를 실행하려고하면내가 다음과 같습니다 PowerShell 스크립트를 매개 변수

나는 오류 메시지가 Networkname not found

내가 실행

param(
[string]$fullpath = "\\192.168.1.120\share", 
[string]$username = "administrator", 
[string]$password ="test123", 
[string]$driveletter = "P:", 
[bool]$storedrive = $False) 

$net = new-object -ComObject WScript.Network 

$net.MapNetworkDrive($driveletter, $fullpath, $storedrive, $username, $password) 

에 다음 코드를 컴파일 ... 그리고 .EXE를 실행하는 경우 -을 작품과 나는 탐색기에 표시된 네트워크 드라이브를 얻을 ....

왜이 작동하지 않는 아이디어? 감사합니다 마르쿠스

+0

매개 변수에 문제가있는 것 같습니다. MapNetworkDrive에 전달 된 매개 변수 집합을 표시하려면 작동하지 않는 버전에'write-host'를 추가하십시오. 출력이 합리적으로 보입니까? – vonPryz

+0

'write-host "$ net.MapNetworkDrive ($ driveletter, $ fullpath, $ storesrive, $ username, $ password)를 추가하려고 할 때 실행 파일을 exe로 컴파일하면 ... 실행할 때 powershell에서 제대로 작동하고 출력물을 출력합니다. – Markus

+0

'Write-Host "$ net.MapNetworkDrive (...)"대신에 간단한 "Write-Host"fullpath = $ fullpath; username = $ username; password를 사용해보십시오 = $ password; driveletter = $ driveletter; storedrive = $ storedrive "'- 전달하려는 매개 변수가 EXE 내에 올바르게 지정되었는지 확인하고자합니다. –

답변

0

나는 지금이 스크립트 내가이 잘 작동 한 .exe 로 변환

param(
[string]$driveletter, 
[string]$fullpath, 
[string]$username, 
[string]$password) 

$net = new-object -ComObject WScript.Network 

$net.MapNetworkDrive($driveletter, $fullpath, $false, $username, $password) 

를 사용 justing 해요, 해결책을 발견했다. 한 .exe는 부울로 변환하는 몇 가지 문제가 있습니다 다음 "매개 변수"

run.exe "P:" "\\192.168.1.120\share" "administrator" "test123" 

를 사용합니다. 그러나, 그것은 지금 내가 원하는 방식으로 작동합니다.

관련 문제