WinMain statisch linken?
-
Ist es normal das sich das hier ...
#include <windows.h> #pragma comment(lib,"User32.lib") int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { MessageBox(0,L"Test",0,MB_OK); return 0; }... nicht kompilieren lässt wenn ich in den Projektoptionen "Use of MFC" auf "Use MFC in a Static Library" einstelle? Ich brauch ein Programm das auch läuft ohne das ich irgendwelche DLLs auf dem Zielrechner installieren muss.
"Codegeneration" is auf "Multi-threaded Debug" eingestellt.Linker meldet:
error LNK2019: unresolved external symbol _wWinMain@16 referenced in function ___tmainCRTStartupSobald ich es auf "Use Standard Windows Libraries" stelle läßt sich zwar alles compilieren und linken ... nur dann brauch ich doch bestimmt wieder irgendwelche DLLs oder?
-
du wirbelst da so einige begrifflichkeiten durcheinander. dat LPSTR in der WinMain is ja auch ned das wahre und dann das L in Messagebox dazu.
-
Warum is das nicht das wahre? So steht WinMain im MSDN.
Was ist mit dem L? Das Projekt soll UNICODE sein.Wie bekomme ich das nun statisch verlinkt?
-
Ändere dein WinMain auf folgende Signatur:
int _tWinMain(HINSTANCE /*hInstance*/, HINSTANCE /*hPrevInstance*/, LPTSTR /*lpCmdLine*/, int /*nCmdShow*/) { }Edit:
ev. noch tchar.h includieren.
-
ahh
*WinMain nix gut für Unicode*Danke theta!
Klappt wunderbar, habe noch ein WINAPI davor gesetzt - sonnst meckert der Compiler wegen der callingconvention
