Windows 98 S.E. + Delphi6 Personal を使用しています。
アプリケーションからネットワーク接続の有無が知りたくて調べてみたのですが、
GetSystemMetrics(SM_NETWORK)
の返り値の最下Bitが1ならばネットワーク有、0ならばネットワーク無し
上位Bitは将来の拡張の為に空けてある。と書いてありました。
しかし、私の環境では、LAN接続の有無orダイヤルアップ接続の有無、
どのような状態でも常時0(ネットワーク無)が返って来ます。
みなさんの環境ではちゃんと判定できますか?
また、他のネットワーク接続の有無の判定法を知っている方、
おられましたら、ご教授お願いします。
ネットワークとは違いますがインターネットなら
http://hp.vector.co.jp/authors/VA015850/delphi/tips/winapi05.html
関係ないですか・・・
同じ条件(Windows 98 S.E. + Delphi6 Personal)で、
if GetSystemMetrics(SM_NETWORK) and $01 = $01 then
ShowMessage('Machine is attached to network')
else
ShowMessage('Machine is not attached to network');
を実行すると、ネットワーク有りと判定されますけど...
netさん、ありがとうございます。リンク先の方法だと、
ちゃんと判別できました。
こちらでは さんはちゃんと判別できているのですね。
実行ファイルのスリム化の面からも、この方法で判別できれば
ベストなんですけど・・・
とりあえずの解決となりましたが、もう少し調べてみます。
みなさん、ありがとうございました。
ツイート | ![]() |