द्वारा तोड़ दिया गया है हमारी टीम क्यूटी 4.7.4 का उपयोग कर एक जटिल अनुप्रयोग विकसित कर रही है। हमारे द्वारा प्रदान किए जाने वाले प्रमुख कार्यों में से एक को QWebBrowser द्वारा प्रदान की गई HTML + JS सामग्री की आवश्यकता होती है।मानक विंडोज़ खुले/सहेजने वाले संवाद को वेबकिट
समस्याकि कुछ पृष्ठों की लोडिंग टूट खुला/बचाने के संवाद को जन्म देता है:
संवाद अभी भी बातचीत के संदर्भ में "काम": फ़ाइल फिल्टर बता गया खोला जा सकता है, फ़ाइल नाम दर्ज किया जा सकता है, लेकिन यह सब गलत हो गया है। फ़ाइल सूची और निर्देशिका पेड़ बिल्कुल तैयार नहीं किया गया है।
मुझे क्यूटी बग ट्रैकर और Google पर इस समस्या के बारे में कोई बग रिपोर्ट नहीं मिली है। हमने फैसला किया कि समस्या हमारी परियोजना के लिए स्थानीय है। हम मानते हैं कि कुछ comctl32.dll आंतरिक संरचना किसी के लिखने के ऑपरेशन से अमान्य पते पर बर्बाद हो जाती है, लेकिन हमें नहीं पता कि असली कारण कैसा है। यह भी उल्लेख करना महत्वपूर्ण है कि यह समस्या Qt 5.4 और 8.0 के कम संस्करण वाले किसी भी संस्करण पर दिखाई नहीं दे रही है। दुर्भाग्य से, हमें अभी भी क्यूटी 4.8 पर अगली रिलीज बनाना चाहिए (परियोजना बहुत बड़ी है, अपग्रेड प्रक्रिया में काफी समय लगता है)।
ऐसी समस्या को कैसे डिबग किया जा सकता है? क्या मेमोरी ऑपरेशंस और/या WinAPI कॉल को लगाया जाना चाहिए? किसी भी विचार की अत्यधिक सराहना की जाती है।
toolchain MSVC 9.0 (वी.एस. 2008)
यदि आप विंडोज 8 और ऊपर काम करने के लिए क्यूटी 4.7 की कामना करते हैं, तो आप इसे बनाए रखने के लिए अपने आप हैं (या इसके लिए एक कस्टम अनुबंध खरीदते हैं)। यदि संभव हो तो आप comctl32.dll को अनलोड और पुनः लोड कर सकते हैं। लेकिन सबसे महत्वपूर्ण बात यह है कि यह या तो आपके कोड में एक मेमोरी बग के लिए एक क्यूटी मेमोरी बग, या (अधिक संभावना) को इंगित करता है। यह देखने के लिए कि क्या आपने कुछ भी स्पष्ट किया है, स्थिर विश्लेषकों का उपयोग करें। वहां कई सारे हैं, लेकिन आपके प्रोजेक्ट के आकार को देखते हुए आपको कम से कम पीवीएस-स्टूडियो और कवरिटी का उपयोग करना चाहिए, इसके अलावा हालिया विजुअल स्टूडियो संस्करणों के साथ आता है। –