
プログラミング初心者です。
Visal Studio 2010を使用してC++の勉強をしています。
http://www.geekpage.jp/programming/iphlpapi/inte …
上の記事を参考にIP Helper APIのプログラミングを試してみたのですが、エラーが出てしまいコンパイルできません。
「Windows.hをインクルードすると良い」という記事を見つけて試しましたが、同様のエラーが出るだけでした。
//コード------------
#include "stdafx.h"
#include <WinSock2.h>
#include <IPHlpApi.h>
#include <Windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
PIP_INTERFACE_INFO pInfo = NULL;
ULONG ulOutBufLen = 0;
DWORD dwRetVal = 0;
/* 変数ulOutBufLenに必要なサイズを取得 */
if( GetInterfaceInfo(NULL, &ulOutBufLen)==ERROR_INSUFFICIENT_BUFFER ){
pInfo = (IP_INTERFACE_INFO *)malloc(ulOutBufLen);
}
return 0;
}
//実行結果----------
error LNK1120: 外部参照 1 が未解決です。 R:\Programming\VisualStudio2010\Projects\IPHLPAPIの利用\Debug\IPHLPAPIの利用.exe IPHLPAPIの利用
error LNK2001: 外部シンボル "_GetInterfaceInfo@8" は未解決です。 R:\Programming\VisualStudio2010\Projects\IPHLPAPIの利用\IPHLPAPIの利用\IPHLPAPIの利用.obj IPHLPAPIの利用
//------------------
ちなみに、main内の5行目「GetInterfaceInfo」は「IPHlpApi.h」内にちゃんと存在しています。
以上になります。長文お読みいただきありがとうございました。
色々検索してみましたがお手上げ状態です・・・よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
MSDNには,
> Requirements
> Library Iphlpapi.lib
とあるのですが,Iphlpapi.libをちゃんとリンクしていますか。
ref)
http://msdn.microsoft.com/en-us/library/windows/ …
ご回答ありがとうございます。#includeの下に
「#pragma comment(lib,"iphlpapi.lib")」
の一行を追加したところ正常に動作しました!
リンクという機能があったのは初めて知りました。大変勉強になりよかったです。ありがとうございます。
No.2
- 回答日時:
>ちなみに、main内の5行目「GetInterfaceInfo」は「IPHlpApi.h」内にちゃんと存在しています。
それはGetInterfaceInfoという関数があることが書かれているだけ、その実体は#1の書かれているライブラリにあります。
「プロトタイプ宣言」を調べてみてください。
ご回答ありがとうございます。
そう言われてみれば、確かにF12キーで参照できるのはヘッダの宣言ですね。プロトタイプ宣言については一応知っているつもりでしたが、多量の記述に圧倒されて本質を見抜けずにいました。でもご指摘いただけたおかげで、また一つ理解を進めることができよかったです。ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VC++2008でのサンプルプログ...
-
外部シンボル" ~~"は未解決で...
-
外部依存関係について
-
DB2付きのC言語がコンパイルで...
-
エラー 未解決の外部シンボル
-
未解決の外部シンボル
-
vs2010 mfc拡張DLL LNK2019
-
libdecodeqrをVC6.0のダイアロ...
-
『外部シンボル~未解決です。...
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
” OS ビルド ” の意味が分か...
-
VBAを何回も作り直して、容量が...
-
Makefile作成時の拡張子.oとは?
-
DLLファイルの逆コンパイラにつ...
-
マクロ コンパイルがグレーバック
-
1 つ以上の複数回定義されてい...
-
C# リソースに埋め込んだ.exeフ...
-
バッチからsqlplusの接続エラー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
外部依存関係について
-
外部シンボル" ~~"は未解決で...
-
未解決の外部シンボル
-
エラー 未解決の外部シンボル
-
このプログラムを動かしたいの...
-
LNK2019: 外部シンボル どのよ...
-
LNK2001(Pro*c)
-
C++STLについての質問です。
-
C言語のエラー LNK1120: 外部参照
-
error LNK2001について
-
PCをシャットダウンさせるプロ...
-
DB2付きのC言語がコンパイルで...
-
パブリックシンボルとは?
-
外部シンボルの未解決のエラー
-
libjpegに関する質問
-
MFC C++ と C++/CLI の文字列
-
LNK2019: 未解決の外部シンボル...
-
IP Helper APIを使うとエラーが...
-
C++でdllの呼び出しについて
-
PathIsDirectoryを使って
おすすめ情報