Получить реальный путь местоположения exe - PullRequest
0 голосов
/ 05 октября 2019

Я пытаюсь выполнить 2 exe (File1.exe и File2.exe) с помощью другого сценария, преобразованного в exe (Run.exe) .. он прекрасно работает, когда я использую строки в сценарии Run.exe:

Start-Process -FilePath "$(Get-Location)\Folder1\File1.exe"
Start-Process -FilePath "$(Get-Location)\Folder2\File2.exe" 

Проблема в том, что File1.exe и File2.exe получают местоположение модуля запуска (который Run.exe) вместо их собственного:

Моя схема:

* 1014Сценарий *

в File1.exe и file2.exe:

write-host "$(Get-Location)"

Таким образом, при запуске я должен печатать C:\Users\Sensei\Desktop\folder1 и C:\Users\Sensei\Desktop\folder2 в консольных окнах file1.exe и file2.exeмодуль запуска (Run.exe), но я получаю путь запуска, который C:\Users\Sensei\Desktop

1 Ответ

1 голос
/ 05 октября 2019

Ответ здесь:

$FullPathToEXE = [System.Diagnostics.Process]::GetCurrentProcess().MainModule.FileName

$DirectoryContainingEXE = [System.IO.Path]::GetDirectoryName($FullPathToEXE)
...