मैं किसी भी मामले में kernel32.lib की तुलना में सीआरटी, या किसी अन्य आयात के बिना कंसोल एप्लिकेशन बनाने की कोशिश कर रहा हूं। मैं संकलित करने के लिए मेरे कोड मिलता है, लेकिन कुछ समस्याओं के आसपास लिंकर रैप नहीं कर सकते हैं:सीआरटी और डिफ़ॉल्ट शीर्षलेख के बिना कंसोल ऐप्स बनाना?
unresolved external symbol @[email protected]
unresolved external symbol "int __cdecl FreeLibrary(void *)" ([email protected]@[email protected])
unresolved external symbol "void * __cdecl LoadLibraryW(wchar_t *)" ([email protected]@[email protected])
unresolved external symbol "int (__cdecl*__cdecl GetProcAddress(void *,char *))(void)" ([email protected]@[email protected])
unresolved external symbol _wmainCRTStartup
FreeLibrary, LoadLibraryW और GetProcAddress मैं में लेकर आए हैं, स्पष्ट रूप से कार्यक्रम, windows.h का उपयोग नहीं:
#pragma comment(lib, "kernel32.lib")
typedef int(*FARPROC)();
void* LoadLibraryW(wchar_t* lpLibFileName);
FARPROC GetProcAddress(void* hModule, char* lpProcName);
int FreeLibrary(void* hLibModule);
मुझे लगता है कि मेरे प्रोटोटाइप में कुछ गड़बड़ है। हालांकि, बड़ी समस्या __security_check_cookie
और _wmainCRTStartup
है, जो स्पष्ट रूप से सीआरटी के साथ कुछ करने के लिए है। तो मैं सोच रहा हूं कि मैं एंट्रीपॉइंट के लिए डिफ़ॉल्ट int wmain(int argc, wchar_t* argv[])
ओवरराइड करने के बारे में और सुरक्षा कुकी के किसी भी चीज़ से छुटकारा पाने के तरीके के बारे में सोचूंगा।
असल में मैंने उन्हें पहले से ही स्टडकॉल के रूप में आजमाया, और इसने समस्या को हल नहीं किया। – anon6439