satocchiaブログ

satocchiaブログ

PR

×

キーワードサーチ

▼キーワード検索

カレンダー

コメント新着

tomoZo@ Re:Pale Moon日本語化トラブル(06/06) はじめまして。 28.16.0でまたもや提供さ…
satocchia @ Re[1]:Pale Moon日本語化トラブル(06/06) zui_9さんへ 本日、確認しました。ようや…
zui_9 @ Re:Pale Moon日本語化トラブル(06/06) 上記リンク「Githubのプロジェクト」の左…
わたなべ@ Re:powershellコンソール、見づらくありませんか?(08/26) 初めまして、この情報最高です! 背景を白…
y__@ Re:uwscでGUIフォーム(05/12) UWSC 仮掲示板から飛んできました。 HTAで…
2018.06.24
XML
カテゴリ: powershell
Sytem.Windows.FormsやらSystem.Webやらを読み込んで、powershellスクリプトを作成するとき必要なのが、これらのアッセンブリー(って言うらしい。アセンブラとは関係なさそう)を読み込む おまじない です。

やり方は
  • [System.Reflection.Assembly]::LoadWithPartialName("ほにゃらら")
  • Add-Type -AssemblyName ほにゃらら ←引用符不要
って感じ。

なぜ2つあるかとかどっちを使うべきかなど検索すると​ こんなの ​とか​ こんなの ​とか出てくるんだけど、よく分からない。

それはともかく、手軽に重複なく読み込みたいなと思ってこんな関数を書いてみました。

#########################################################################################################

function    LoadAssembly( [parameter(mandatory=$true)][string]$assemblyname ){
    $AllAsms    =[System.AppDomain]::CurrentDomain.GetAssemblies() | % { $_.GetName().Name }
    if             ( ( $AllAsms -notcontains $assemblyname ) -and ( $AllAsms -notcontains "system.$assemblyname" ) ){
        try{
            Add-type -Assembly $assemblyname -erroraction stop
        } catch {
            Add-type -Assembly "system.$assemblyname"
        }
    }
}
#使用例 System.Webを読み込む

#確認 [System.Web.HttpUtility]::UrlEncode
function    LoadAssemblies{
    if ( !$args ){
        throw "アッセンブリー名を指定してください"
    }

}





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2018.06.24 07:33:11コメント(0) | コメントを書く
[powershell] カテゴリの最新記事


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: