GetProcAddressに自モジュールハンドルを渡して文字列経由で関数呼び出しをしたいのですがリンク時に
エントリポイント '_mainCRTStartup' は 12 バイトの引数を持つ __stdcall ではありません。イメージは動作しない可能性があります
と警告が出て実行すると有効なWin32アプリでないといわれてしまいます. リンクオプションに/DEF:"test.def"を追加しています.
EXPORTS mainCRTStartupを加えてみたり__stdcallをmainCRTStartupの宣言に加えてみたりしたのですがだめでした
以下ソースコードです
#include <windows.h>
#include <iostream>
typedef void (*func_t)();
void Hello()
{
  std::cout << "Hello" << std::endl;
}
int main()
{
  HMODULE this_exe = GetModuleHandle(NULL);
  func_t hello= (func_t)GetProcAddress(this_exe,"Hello");
  hello();
  return 0;
}
以下test.defです
LIBRARY test
VERSION 1.0
EXPORTS Hello

ttp://hp.vector.co.jp/authors/VA023539/tips/dll/006.htmにdefファイルを作れば__declspec(dllexport)がいらないと
書いてあったのでできるだけdefファイルを使いたいです