У меня есть проект C#, используемый в качестве командлета PowerShell - это должен быть API для основной функции продукта, поэтому мне нужно ссылаться на большое количество DLL в моей библиотеке PowerShell ,dll dll, который ссылается на другую DLL проекта, не работает при загрузке
Моя проблема заключается в том, что клиенты хотят загрузить dll PowerShell из любого места без настроек рабочего каталога в папку программы, где расположены все dll. Но я могу только использовать команды мой PowerShell, если я открываю Powershell с помощью ярлыка, где рабочий реж устанавливается в программных файлах папки, как это:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -noexit -command "[reflection.assembly]::loadFrom('.\PSAPI.dll') | import-module"
и установить также рабочий каталог в моей папке программных файлов, где продукт уже установлено.
Если я просто использовать
[Reflection.Assembly]::LoadFile("C:\Program Files(x86)\MyProduct\PSAPI.dll")
или
[Reflection.Assembly]::LoadFrom("C:\Program Files(x86)\MyProduct\PSAPI.dll")
он всегда терпит неудачу. Есть ли решение для этого (без копирования всех файлов в папку PowerShell)?
Вот что я пытаюсь получить, и я получаю сообщение об ошибке - я не могу установить ссылочную dll в другом виде - приложение .NET ищет в рабочем каталоге для ссылочных dll - я установил рабочий каталог в powershell для обеспечения Я нахожусь в нужном каталоге, но он не будет загружать мой модуль
[reflection.assembly]::loadFrom('C:\Program Files (x86)\ASG-Remoteesktop 2016\ASGRD-PSAPI.dll') | import-module
Exception вызова «LoadFrom» с «1» аргумент (ы): «не удалось загрузить файл или сборку файл»: ///C: \ Program Files (x86) \ ASG-Remoteesktop 2016 \ ASGRD-PSAPI.dll 'или одна из его зависимостей. Система не может найти указанный файл . " В строке: 1 char: 1 + [reflection.assembly] :: loadFrom ('C: \ Program Files (x86) \ ASG-Remoteesktop 2016 \ A ... + ~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~ ~~~ + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: FileNotFoundException