विनमेन एक ऐसा फ़ंक्शन है जो डिफ़ॉल्ट मुख्य प्रविष्टि बिंदु 'मुख्य' को 'प्रतिस्थापित करता है'।सी ++: कस्टम मुख्य फ़ंक्शन लागू करें
उपयोगकर्ता तो
int WINAPI WinMain(...) { }
की तरह अपने मुख्य प्रवेश बिंदु कैसे कैप्सूलीकरण इस तरह से किया जाता है परिभाषित कर सकते हैं?
ठीक है, सबसे अधिक संभावना है, कुछ बिंदु पर यह इस तरह दिखता है:
int main() // This must be defined somewhere in windows.h
{
return WinMain(...);
}
प्रश्न: मैं स्वयं इस तरह के एक कैप्सूलीकरण, जो तब WinMain कॉल कैसे पूरा कर सकते हैं? नोट: पुस्तकालय जो मैं बना एक DLL है, इसलिए यह इस तरह दिखेगा:
// This is the minimal code for the application which uses 'MyLibrary'
#pragma comment(lib, "MyLibrary.lib")
include "MyLibrary.h"
void Main(MyCustomParameter *params)
{
// Write user code here
}
समस्या तथापि है, कि DLL नहीं है 'पता' Main()
कार्य है और इसलिए एक 'अनसुलझे फेंकता बाहरी प्रतीक 'संकलन त्रुटि। तो मैं इसे इस तरह कैसे समाहित कर सकता हूं?
मुझे अभी भी 'बाहरी "सी के साथ एक अनसुलझा बाहरी मिलता है। क्या ऐसा इसलिए है क्योंकि मैं WinMain का उपयोग मुख्य की बजाय आंतरिक प्रविष्टि बिंदु के रूप में करता हूं? – bytecode77
@ डेविल्स चाइल्ड: यह कहना मुश्किल है कि आप क्या करते हैं। यदि आपका प्रवेश बिंदु 'WinMain' है -' WinMain' से अपना मुख्य कॉल करें। यदि यह केवल 'मुख्य() 'है - इसे' मुख्य()' से कॉल करें। पहले w/o परिवर्तनों को संकलित करने के लिए अपना कोड प्राप्त करें, फिर परिवर्तन करें और देखें कि क्या ब्रेक। या कम से कम एक न्यूनतम पूर्ण उदाहरण डालें जो आपकी समस्या का प्रदर्शन करता है ... अन्यथा जो भी आप कर रहे हैं उसे डीबग करना मुश्किल है। –
जाहिर है, यह संरचना शामिल करने में एक समस्या है। मैंने यहां कुछ बहुत ही सरल कोड डाला है: http://dev-ch.com/files/a8dce463-65a2-54fe-ef43-c9d4160dea95/mylibrarywithcustommain.zip जब मैं 'exampleClass.h' शामिल नहीं करता हूं तो यह काम करता है। – bytecode77