アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。

Visual stdio 2010 C++ MFC で作成しております。

CString test=GetComputerName(0);
という形でコンピュータ名を取得しようとしているのですが、
ビルドすると
LNK2019 未解決のシンボル GetComputerName・・・
と出て、GetComputerNameの関数が不明な旨メッセージが出ます。

そこで、
#include <winbase.h>
#include <windows.h>
#include <stdio.h>
#pragma comment(lib,"Kernel32.lib")
など、インクルードしたのですが、同じメッセージのままです。

どのヘッダーをインクルードしたらよいのでしょうか、また、
必要なリンケージ等もありましたら教えてください。

お手数ですがよろしくお願いいたします。

A 回答 (2件)

> 現在、このソースが含まれている関数を


> 別のプロジェクトで使用するために移植しているのですが、
> 元のソースではこの形で動いていたのです。

ならば、そのプロジェクト内にAPIとは別のGetComputerName関数があるんでしょう。
プロジェクトがデバッグ実行できるなら、ステップインしてどこの関数が呼ばれるのか確認できますが。
    • good
    • 0

パラメータが違うから、見つからないんじゃないですか?


winbase.hの中見てみれば判るんじゃないですか?

http://msdn.microsoft.com/ja-jp/library/cc429732 …

//

WINBASEAPI
BOOL
WINAPI
GetComputerNameA (
OUT LPSTR lpBuffer,
IN OUT LPDWORD nSize
);
WINBASEAPI
BOOL
WINAPI
GetComputerNameW (
OUT LPWSTR lpBuffer,
IN OUT LPDWORD nSize
);
#ifdef UNICODE
#define GetComputerName GetComputerNameW
#else
#define GetComputerName GetComputerNameA
#endif // !UNICODE

参考URL:http://msdn.microsoft.com/ja-jp/library/cc429732 …

この回答への補足

お返事ありがとうございます。

現在、このソースが含まれている関数を
別のプロジェクトで使用するために移植しているのですが、
元のソースではこの形で動いていたのです。
※元のプロジェクトはVC++

関数内のその他のソースは、まったくいっしょですので、
インクルードの問題だと思っているのです。

申し訳ございませんがよろしお願いいたします。

補足日時:2011/08/25 21:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!