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

DLLを実行中(run time)で呼び出す練習で以下のプログラムを書きました。
Visual C++ 2012です。
以下でビルドすると
'HINSTANCE' : 定義されていない識別子です。 というエラーメッセージがでます。
そこで、#include <DxLib.h>が必要だとどこかに書いてあったので入れてみると

'#include <DxLib.h>': プリコンパイル済みヘッダーの使用を検索中にスキップされました
とういエラーメッセージとなります。

実際、PC内でDxLib.hを検索しても見つからないのですが
これを動かす、またはDLLを呼び出すにはどうしたらよいのでしょうか?

#include <stdafx.h>
//#include <DxLib.h>

#define STRICT
int function1();

int _tmain(int argc, _TCHAR* argv[])
{
function1();
}


int function1()
{
HINSTANCE hMyLib;
PTESTFUNC fpTestFunc;

hMyLib = LoadLibrary( "dll1.dll");
if (hMyLib) {
fpTestFunc = (PTESTFUNC)GetProcAddress(hMyLib, "TestFunc");
for (int i = 0; i <=9000; i++) {
int x = (*fpTestFunc)(i, i + 10);
printf("result = %d,%d,%d\n", i , i + 10, x);
}
}
FreeLibrary(hMyLib);
break;

}

A 回答 (4件)

>私は単にDLLの利用法を学習中なだけなのですが、



なら、DxLibは関係ありません。

>windows.hから入るとは?何が何に入ったのでしょうか?
>(とぼけた質問のようですみません)
>また、何を記述することになるのでしょうか?

windows.h内、またはwindows.hからインクルードされているヘッダ内にHINSTANCEの定義があります。

stdafx.hのヘッダ内にwindiws.hのインクルードを追加して下さい。
ただし、VS2012辺りになると
#include <windiws.h>
だけで済むかどうかは判りません。
他にもdefine定義が必要になるかも知れません。
    • good
    • 0
この回答へのお礼

ありがとうございました。
windows.hをインクルードして、無事動かすことができました。

といっても正常に動かないので、別途質問させていただきます。

お礼日時:2017/09/14 12:01

何のためにDXlibを使うのかわかりませんが


dxlibは以下のところにあります。
http://dxlib.o.oo7.jp/dxdload.html
利用方法は以下のところです
http://dxlib.o.oo7.jp/dxuse.html
    • good
    • 0
この回答へのお礼

ありがとうございます。

結局、DXlibは特に必要なかったようでした。

お礼日時:2017/09/14 12:01

>そこで、#include <DxLib.h>が必要だとどこかに書いてあったので入れてみると



それはDxライブラリのヘッダーでしょう。
DirectXをラッパーしたライブラリ…でしたかね?
自分でインストールしていなければ入っているわけがありません。
# VS入れれば勝手に入ってくれるモノではありません。

>'HINSTANCE' : 定義されていない識別子です。

windows.hから入ったかと思いますが…。

>#include <stdafx.h>

とすると、stdafx.cppとかその辺りファイルに記述することになるかと。
https://so-zou.jp/software/tech/windows-app/win3 …
    • good
    • 0
この回答へのお礼

ありがとうございます。
まずは、自分で入れるところからやってみます。

以下はどのようなことをおっしゃっているのでしょうか?
windows.hから入るとは?何が何に入ったのでしょうか?
(とぼけた質問のようですみません)
また、何を記述することになるのでしょうか?


~~~~~~~~~~~~~~~~~~~
windows.hから入ったかと思いますが…。

>#include <stdafx.h>

とすると、stdafx.cppとかその辺りファイルに記述することになるかと。
https://so-zou.jp/software/tech/windows-app/win3

お礼日時:2017/09/13 18:44

以下のサイトに解決方法があるようです。


http://dixq.net/forum/viewtopic.php?t=6304
    • good
    • 0
この回答へのお礼

ありがとうございます。参考にしてみます。

それにしても、Dxライブラリとはゲーム作りが目的とのこと。
私は単にDLLの利用法を学習中なだけなのですが、

ゲーム用のライブラリがDLLの基本の勉強に必要
ということなんでしょうかね。不思議です。

お礼日時:2017/09/13 18:49

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