- PR -

VB.netで自分のPCのIPアドレス表示

1
投稿者投稿内容
Nakata
常連さん
会議室デビュー日: 2004/03/30
投稿数: 41
投稿日時: 2004-03-30 05:47
IPアドレスをテキストボックスに
表示させるには、どのようなコード
を書けばいいのでしょうか?
(LANの接続の場合に必要かと思い。)

Dim hostname As String
hostname = System.Net.Dns.GetHostName
でホスト名を取得

Dim ipaddr As String
Dim hostent As System.Net.IPHostEntry = System.Net.Dns.GetHostByAddress(System.Net.IPAddress.Any)
ipaddr = hostent.AddressList(0).ToString
で IP アドレスを取得できる

と書いてあるのを見つけましたが、どの場所に書けばいいかかがわかりません。
ボタンクリックイベントにコードを書いても反応はありませんでした・・・。

理想としては「参照」にあるような、ボタンを押さなくても表示ができれば
ベストです。


[ メッセージ編集済み 編集者: Nakata 編集日時 2004-03-30 06:21 ]
茉麻
常連さん
会議室デビュー日: 2004/03/30
投稿数: 20
投稿日時: 2004-03-30 06:47
.Net を使った事無い人間の返答で申し訳ないのですが

> Dim ipaddr As String
> Dim hostent As System.Net.IPHostEntry = System.Net.Dns.GetHostByAddress _
> (System.Net.IPAddress.Any)
> ipaddr = hostent.AddressList(0).ToString

上記コードを FORM_Load とか タイマーのイベントに書けばいいかと思います。

分かってるとは思いますが、上記コードは取得であって表示はしてません。
表示するならフォームのキャプションなりラベルやテキストボックスに、
上記のコードで言うなら ipaddr を代入してあげてください。


Nakata
常連さん
会議室デビュー日: 2004/03/30
投稿数: 41
投稿日時: 2004-03-30 07:00
> Dim ipaddr As String
> Dim hostent As System.Net.IPHostEntry = System.Net.Dns.GetHostByAddress _
> (System.Net.IPAddress.Any)
> ipaddr = hostent.AddressList(0).ToString
を入力し、デバッグすると「0.0.0.0」と表示され。

Dim hostname As String
hostname = System.Net.Dns.GetHostName
を入力すると「computername」と表示されてしまいます。

茉麻
常連さん
会議室デビュー日: 2004/03/30
投稿数: 20
投稿日時: 2004-03-30 07:17
ipaddr = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName).AddressList(0).ToString)

こうだとどうでしょうか?
(2行で表示されてしまいますが、1行で書いてください)

[ メッセージ編集済み 編集者: 茉麻 編集日時 2004-03-30 07:24 ]
Nakata
常連さん
会議室デビュー日: 2004/03/30
投稿数: 41
投稿日時: 2004-03-30 07:35
できました!ありがとうございます。
もう一つの方も同じ要領でと言われてもわからないので
教えて頂けませんか?

こういうコードってやっぱり覚えていくものなのですか?
本を見てもサッパリわかりません…×
茉麻
常連さん
会議室デビュー日: 2004/03/30
投稿数: 20
投稿日時: 2004-03-30 11:26
いや実は Google で調べただけなんですけどね ^^;


なので、このサンプルへの別の方法ってわけではないですが、
私はいつもわからない事があればネットから実現したい機能かそれに
関係しそうなサンプルとかをとにかく拾ってきて、自分がわかり易いソースを
コピーしたあとに、時間があれば動作を確認していくと言う形を取っています。

これでもけっこう覚えられるものです。

_________________
/--/ 茉麻 /-------------------------------------/
1

スキルアップ/キャリアアップ(JOB@IT)