2008-08-25 15 views
13

Chcę użyć Powershell do napisania narzędzi, wykorzystując własne komponenty .NET do obsługi rzeczywistej pracy. To jest na miejscu pisania małej aplikacji konsolowej, która łączy połączenia. Moje pytanie brzmi: gdzie znajdę dobre źródło dokumentacji lub materiałów szkoleniowych, które pomogą mi to szybko śledzić?Uzyskiwanie dostępu do komponentów .NET z Powershell

+0

Czy potrzebujesz informacji o prostu za pomocą zestawów .NET w powershell, czy może szukasz informacji na temat zestawów piśmienniczych, które są bardziej PowerShell przyjazny? – EBGreen

Odpowiedz

16

Jeśli chcesz załadować zespół do sesji PowerShell, możesz użyć odbicia i załadować zespół.

[void][System.Reflection.Assembly]::LoadFrom(PathToYourAssembly) 

Po załadowaniu zespołu można wywoływać metody statyczne i tworzyć nowe instancje klasy.

Dobry samouczek można znaleźć here.

Obie książki wymienione przez EBGreen są doskonałe. Książka kucharska PowerShell jest bardzo zorientowana na zadania, a PowerShell w akcji jest świetnym opisem języka, jego ostrości i użyteczności. PowerShell w akcji jest jedną z moich ulubionych książek. :)

+0

+1: za fajny link do tutoriala – Sung

+1

@Sung Dzięki, aktualnie pracuję nad serią o korzystaniu z .NET z PowerShell na moim blogu - http://blog.usepowershell.com/category/net-framework/introduction/ –

+0

:/links nie działają, czy możesz je zaktualizować? oto kolejny, który znalazłem http://www.dougfinke.com/blog/index.php/2010/08/29/how-to-load-net-assemblies-in-a-powershell-session/ przydatne –

4

Link, który Steven zamieścił jest dobrym przykładem. Nie znam żadnego obszernego samouczka. Zarówno Windows Powershell Cookbook, jak i Windows Powershell In Action mają dobre rozdziały na ten temat. Zobacz także metodę :: LoadFromFile klasy System.Reflection.Assembly na wypadek, gdyby twoje wewnętrzne zestawy nie zostały załadowane do GAC.

0

można użyć [] lub użyj add-type -AssemblyName "System.example" używać montaż na przykład użytku:

[system.drawing]::class ...