- ベストアンサー
Winsock(またはWinInet)でグローバルIPを調べたい
WinsockかWiniNetのいずれかを用いてグローバルIPアドレスを 取得することは可能でしょうか? 192.~のようなプライベートIPならWinsock関数を組み合わせて取得できたのですが・・。
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- Winsockコントロールにて・・・。
Winsockコントロールでホスト名からIPアドレスを求めることはできたので、今度はIPアドレスからホスト名を取得しようと試みています。 APIを用いた場合、 ret =gethostbyname("ホスト名") でホスト名からIPアドレスを求めることができ、 ret =gethostbyaddr("IPアドレス",len,type) でIPアドレスからホスト名を取得することができるので、もしかしたらできるのでは?と思いチャレンジしていますがなかなか上手くいきません…。 やはりWinsockコントロールでは限界があるのでしょうか? ※環境はVisualBasic6.0 pro です。
- 締切済み
- Visual Basic
- WinINet関数について質問です。
WinINet関数を使いVCプログラムしています。 HTMLをダウンロードしてきて、情報を解析しているのですが。 InternetOpen InternetOpenUrl ↓ InternetReadFile 手順で、HTMLの所得はできるのですが、 ユーザー認証がいるサイトの情報を取る方法がわかりません。 (例えば:mixi,facebookなど) WinINet関数を使用してサイトにログインしてから、 指定のURLのHTMLを取得する様な感じだと思っているのですが、やり方がわかりません。 参考になる、サイト等知っている方がいましたら、教えて頂けると嬉しいです。
- ベストアンサー
- C・C++・C#
- wininet.dllとwsock32.dllについて
クライアントのVBAから、サーバにHTTPで文字データを送信しようとしています。 1. WinAPIの"InternetOpenURL"(wininet.dll)が使えると思いましたが、MSDNLibraryではWinCE用と英語で言っているようでした。W2Kの自PCにも上記DLLは入っていますが、W2Kで使うのは一般的ではないのでしょうか? 2. クライアントのIPアドレスも送信したいので、wsock32.dllのAPIで取得しようとしています。wininetやwsock32が、いつインストールされるものなのか(OS入れた時か、Officeか、IEか等)を調べる手段はあるでしょうか?また、MS社以外の製品によって、これらのDLLがアップデートされてしまうことは通常ないと考えていてよいものでしょうか? ご教授下さいますよう、よろしくお願いします。
- ベストアンサー
- Visual Basic
- UDP/IPでのソケット作成について(winsock)
UDP/IPでのソケット作成について(winsock) 開発環境VC++.NET、O/S WIN2000にてソケットプログラミング(winsock2.0)をしています。 コンソールプログラミングではありませんが、WindProcは持っていません。 UDPサーバーを作り、複数クライアントの対応をしたいと考えています。 クライアントAからの通信やりとり中に クライアントBからの通信がきたら、そちらとも通信やりとりを(自動で)行いたい。 ここで問題なのが、クライアントAの要求ポートが15000で、 クライアントBの要求ポートも15000なのです。 同じ既に開いているポートでソケット作成しようとしても、socket()関数はエラーを返してくるのですが、 やり方を工夫すれば、同一ポートでの複数クライアント対応は可能なのでしょうか。不可能なのでしょうか。 可能であれば、やり方、ヒント等教えてください。よろしくお願いします。 追記 (1)TCP/IPでは、同一ポートでソケット作成が可能でした。ネットで探したサンプルプログラムが そのような動きをしていたのですが、UDPに書換えることはできませんでした。 http://eternalwindows.jp/network/winsock/winsock04s.html (2)UNIXの場合fork()処理後に socket()作成 → bind()で同一ポートでの複数クライアント対応が 上手くいくらしいのですが、Windowsではマルチスレッド等をうまく活用すれば、 fork()と同様の処理が可能になり、目的が達成できるでしょうか。
- ベストアンサー
- C・C++・C#
- VC++ 2008 Express EditionでWinInet.hのインクルードができない
Visual C++ 2008 Express EditionにてWinInet.hを使いたいのですが、インクルードすると283件のエラーが吐き出されます。 そのエラーの内容はWinInet.hのソースに不備があるというもので、「;」による構文エラー、型指定がありません、シンボルがオーバーロードできないなどです。 しかしエラー箇所のソースに不備はありません。色々調べましたがこの現象に該当するものが見つかりませんでした。 WinInetを使うときは何か特別な手続きが必要なのでしょうか? WinSock.hのインクルードだとエラーなくコンパイルできるのですが・・・。
- 締切済み
- C・C++・C#
- IPアドレスについて
バッファローのBraodStationを使っています。 IPアドレスというのは1つだけ付与されるものだと思っていました。 しかし、ルータの現在値をみてみると次のようになっているのに気付きました。 (注・数値は勝手に書き換えてあります) IPアドレス 220.218.114.116 DNS1(プライマリ)202.248.1.17 (自動取得) DNS2(セカンダリ)210.160.22.126(自動取得) IPアドレスは私に与えられたものだと思いますが、 後の2つのIPアドレスらしきものはなんなのでしょう? 俗にいうプライベートアドレスとも違うようですが・・・
- ベストアンサー
- ネットワーク
- IPアドレス(2)
以前IPアドレスの事で質問させていただいたんですが またつまづいてしまいご助言願いたいと思いました。 現在使用しているグローバルIPが・・・ クラスBで、128.10.xxx.xxx の通りです そしてLANに繋いでる各端末に割当てている プライベートIPも128.10.xxx.xxxですが クラスBで割振るプライベートIPは 172.16.0.0~172.31.255.255 上記の範囲で割振らなければいけないと聞いたのですが 現行のグローバルIP 128.10.xxx.xxxで プライベートIPを単純に172.16.0.0~172.31.255.255 を割振って構わないのでしょうか?? それともグローバルIPを取得し直さなければダメか?? という所とその他諸々で悩んでいます。 プライベートIPはあくまでLAN内だけのアドレスだと思っていましたが何故使用出来る範囲が決まっているのか? すいませんが詳しい方がいましたら助けて下さい。
- ベストアンサー
- その他(インターネット接続・通信)
- WinSock API
IP変換器を使用してRS-232C → 変換器 → PC を1本のLAN上で行う処理を考えています。 しかし、VBも通信もまったくの初心者でなにから手をつけてよいのかがわかりません。ご指導お願いします。 1.APIを使用してのPG作成 WinSock APIは WinSockコントロールとの違いは何でしょうか? またWinSock APIを使用する場合、VBへの組み込み方法を教えてください。
- 締切済み
- Visual Basic
- 文字列操作について(winsockの関数を用いています)
こんばんは。 Winsockを用いてネットワークプログラミングを行っています。 A→Bへパケットを送信し、B側にてinet_ntoa関数(IPアドレスを文字列として表示させる関数)を用いて、以下のif文の条件を記述したのですが、if文内の条件がうまく動作しません。 デバッガを使用し、IPaddr内を見てみたところ、フフフフフフフフ……と言う文字列?が入っている状態です。 IPaddrに例えば、192.168.100.50等のIPアドレスを格納可能でしょうか? IPaddr[256] strcpy(IPaddr,inet_ntoa(from.sin_addr)); if(IPaddr == inet_ntoa(from.sin_addr)){ //別関数へ } よろしくお願い致します。
- ベストアンサー
- C・C++・C#
お礼
なるほど!これを見て解決しました。 本当にありがとうございます!感謝の極みです!