Saya mulai melihat ke dalam model PowerShell dan pengembangan snap-in. Hal pertama yang saya perhatikan adalah referensi System.management.automation.dll. Namun dalam Visual Studio, tab .NET tidak memiliki perakitan itu, dan juga tidak satu pun dapat menelusuri
C:\windows\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35\System.Management.Automation.dll
untuk membuat referensi berbasis file.
Apakah saya dipaksa untuk menyalin file secara manual untuk membuat referensi yang mudah ?
visual-studio
powershell
icelava
sumber
sumber
Jawaban:
System.Management. Informasi tentang NugetSystem.Management.Automation.dll pada NuGet , paket yang lebih baru dari 2015, tidak terdaftar sebagai yang sebelumnya!
Paket tim Microsoft PowerShell di luar NuGet
Pembaruan: paket sekarang dimiliki oleh Tim PowerShell. Sabas!
sumber
Salinan System.Management.Automation.dll diinstal ketika Anda menginstal windows SDK (yang cocok, versi terbaru, bagaimanapun). Itu harus di C: \ Program Files \ Assemblies Referensi \ Microsoft \ WindowsPowerShell \ v1.0 \
sumber
Jika Anda tidak ingin menginstal Windows SDK, Anda bisa mendapatkan dll dengan menjalankan perintah berikut di PowerShell:
sumber
Saya tidak bisa menginstal SDK dengan benar (beberapa file sepertinya tidak ditandatangani, kira-kira seperti itu). Saya menemukan solusi lain di sini dan itu tampaknya berfungsi baik untuk saya. Tidak memerlukan instalasi file baru sama sekali. Pada dasarnya, yang Anda lakukan adalah:
Edit file .csproj dalam editor teks, dan tambahkan:
ke bagian yang relevan.
Semoga ini membantu.
sumber
jika 64bit - C: \ Program Files (x86) \ Assemblies Referensi \ Microsoft \ WindowsPowerShell ** 3.0 **
dan versinya bisa berbeda
sumber
Saya menggunakan menu Referensi Proyek VS dan melihat-lihat: C: \ windows \ assembly \ GAC_MSIL \ System.Management.Automation dan menambahkan referensi untuk dll dan Runspaces dll.
Saya tidak perlu meretas file .csprj dan menambahkan baris referensi yang disebutkan di atas. Saya tidak menginstal Windows SDK.
Saya memang melakukan salinan Powershell yang disebutkan di atas: Salin ([PSObject] .Assembly.Location) C: \
Tes saya dengan perintah Get-Process Powershell kemudian bekerja. Saya menggunakan contoh-contoh dari Powershell untuk pengembang Bab 5.
sumber
Perakitan datang dengan Powershell SDK (C: \ Program Files \ Assemblies Referensi \ Microsoft \ WindowsPowerShell \ v1.0) tidak datang dengan Powershell 2 tipe spesifik.
Mengedit file csproj secara manual memecahkan masalah saya.
sumber
Anda juga dapat menggunakan nuget: https://www.nuget.org/packages/System.Management.Automation/ Ini mungkin opsi yang lebih baik.
sumber