VB.NETでPCの型式(DELLなら GX620とか)を取得したいのですが、
可能でしょうか?
WMI を使用すれば取得できるようですが。
http://www.microsoft.com/japan/msdn/vbasic/migration/tips/Management/
http://www.anchorsystems.co.jp/anchor/ashp/netmon/samples/wmi_os.html#Win32_OperatingSystem.htm
すみません、アドレス間違いました。Win32_ComputerSystem の Model です。
http://www.anchorsystems.co.jp/anchor/ashp/netmon/samples/wmi_os.html#Win32_ComputerSystem.htm
'System.Management.dll を参照設定に追加し、下記コードを試して見て下さい
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim mc As New System.Management.ManagementClass("Win32_ComputerSystem")
Dim collection As System.Management.ManagementObjectCollection = mc.GetInstances()
For Each mo As System.Management.ManagementObject In collection
TextBox1.Text = mo("Model").ToString
Next
End Sub
花ちゃんさん、遅くにありがとうございます。
なぜかよくわかりませんが、開発環境のPCだと問題ないのですが、
別のPCにexeを持っていくと
『アプリケーションはセキュリティポロシーが・・・』
と言われてしまいます。これは何が原因なのでしょうか?
花ちゃんさんすいません。エラーの意味なんとなくわかりました。
exeファイルがネットワーク上にあったためエラーになっていた
ようです。
これを解決する方法はやはりクライアントPCへ一度ダウンロードする
しかないのでしょうか?
いろいろ解決策はあります。
プログラムをローカルにコピーし、実行するVBScriptを書いて、
プログラムではなくてそちらを実行してもらうとか、
ノータッチデプロイメント/ClickOnceを使用するとか、
たとえば、イントラネットでの使用を想定すれば、
メッセージどおりに、セキュリティポリシーを変更する方法もありますね。
管理ツール→「Microsoft .NET Framework x.x xxxxx」
構成/Configurationでもいいですし、
ウィザード/Wizardsを使えば、よりお手軽に管理が可能です。
ツイート | ![]() |