kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

APIも時と場合

.NETでプリンタを扱うにはどうすればいい?というよくある質問があって、PRINTER_INFO_2使いましょうとか、GetPrinter使いましょうとかいろいろ書かれていました。
だけど、マーシャリングコード書くの面倒だし(誰かのコピペやPInvoke.net使えばいいけど)、Win32 APIしかなかった時代ならともかく、今や他の方法も割とあるんですからもうちょっと楽をしたいな…ということで、私はWMIで取得する方法を押してみたい。
プリンタ関係はWin32_Printerに入っています。dobon.netさんのところに通常使うプリンタをWMIで取得する方法が載っています。とても参考になります。
通常使うプリンタを取得、設定する: .NET Tips: C#, VB.NET
WMIは確かにOSによって使える、使えないとかあるのですがもうXP/Windows Server 2003以降ってことに限れば大分選択肢が増えますよ。