Справочные сборки Powershell для powershell v2 ctp3 - PullRequest
1 голос
/ 27 июня 2009

Я установил powershell v2 ctp3 из загрузки ms, и мне было интересно, где хранятся обычные эталонные сборки для использования в c # для этой версии. Я знаю, что для версии v1 они находятся в файле программы \ etc \ reference Сборки \ powershell .... но где они находятся для версии v2 ctp3. Я специально ищу новый System.Management.Automation.dll

С уважением Боб.

Ответы [ 4 ]

2 голосов
/ 27 июня 2009

В моей 32-битной системе XP

<code>
Get-ChildItem \ -Recurse -Include System.Management.Automation.dll | 
 ForEach-Object {$<em>.DirectoryName,$($</em>.VersionInfo.FileVersion)}
показывает:

   C:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\v1.0
6.0.6000.16386
C:\WINDOWS\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35
6.1.6949.0

Просмотр FileVersion показывает, что в GAC есть версия, которую вы ищете. Но поскольку он находится в GAC, вам не нужно об этом беспокоиться, просто ссылайтесь на него, а затем используйте его.

1 голос
/ 06 мая 2013

В моем случае путь был в

C: \ Windows \ Microsoft.NET \ сборка \ GAC_MSIL \ System.Management.Automation \ v4.0_3.0.0.0__31bf3856ad364e35

Я нашел способ увидеть обновленные папки после установки этого ctp в Windows и посмотреть, куда пошли обновления. Надеюсь, это поможет вам.

0 голосов
/ 01 сентября 2009

О, и я хотел добавить, что GAC используется нагрузкой Fusion для разрешения времени выполнения.

Под временем проектирования / сборки я имею в виду то время, когда вы используете Visual Studio для сборки своего приложения или используете MSBuild для сборки своего EXE-файла. Во время сборки мы определяем ссылки, которые помещаются в EXE. Поскольку может быть задействовано несколько CLR, мы должны убедиться, что на «правильные» ссылаются.

0 голосов
/ 01 сентября 2009

Вы не должны использовать GAC для разрешения ссылок. Вы должны найти соответствующие ссылки под чем-то вроде: C: \ Program Files \ Справочные сборки \ Microsoft \ WindowsPowerShell

Это распространенный миф о том, что сборки решаются во время проектирования / сборки в GAC. До CLR 4.0 вам это не сработало (потому что 3.0 и 3.5 действительно являются CLR 2.0). С истинным многоцелевым таргетингом это ломается. Поэтому вы всегда должны использовать эталонные сборки.

Также обратите внимание, что ссылочные сборки не должны содержать какой-либо код. Они могут быть просто метаданными сборки и общедоступными символами.

...