
プログラミング初心者です。
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ランキング
-
外部依存関係について
-
リンカのエラー
-
LNK2019: 外部シンボル どのよ...
-
LNK2001(Pro*c)
-
IP Helper APIを使うとエラーが...
-
C++/CLIでfstream(.NET 3.5)
-
実行ファイルの容量を減らした...
-
python エラー
-
<unistd.h>をVisualStudioでつ...
-
” OS ビルド ” の意味が分か...
-
ビルドとリビルドの違いを教え...
-
res://ieframe.dll/について
-
visual studio2019でデバッグが...
-
適切な変換関数が存在しない???
-
「fatal error C1189」を回避す...
-
vb2010にてASPWEBシステムを作...
-
VB2008で定数に色の設定をした...
-
ダイアログなどの文字列が文字...
-
エクセルVBAではRound...
-
コールバック関数指定時のエラー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
外部シンボル" ~~"は未解決で...
-
外部依存関係について
-
LNK2019: 外部シンボル どのよ...
-
VC++2008でのサンプルプログ...
-
wsprintfのエラーについて
-
libdecodeqrをVC6.0のダイアロ...
-
C言語のエラー LNK1120: 外部参照
-
未解決の外部シンボル
-
DB2付きのC言語がコンパイルで...
-
エラー 未解決の外部シンボル
-
『外部シンボル~未解決です。...
-
CLapack C++
-
VS2013でrangecheckfailure
-
外部シンボルの未解決のエラー
-
error LNK2001について
-
C++でのエラー LNK2001
-
popen・pcloseについて
-
LNK2019: 未解決の外部シンボル...
-
クラスを使ったC++の関数を...
-
コンパイルエラー
おすすめ情報