2010-05-12 15 views
8

पर Windows API Codepack पश्चगामी संगतता मैं एक XP मशीन काम नहीं है। अगर मैं Windows API Codepack सी # में Vista/Win7 (जैसे, "TaskDialog") के लिए कुछ नया करने के लिए उपयोग करते हैं, यह कैसे Windows XP मशीन पर चल रहा है के साथ सामना करता है? मैं प्रभावी रूप से अपने आवेदन केवल विस्टा और विंडोज के बाद के संस्करणों का समर्थन कर दियाWindow XP

अगर मैं Codepack उपयोग करते हैं, है?

उत्तर

13

आप "TaskDialog.cs" इस पर गौर करते हैं, तो आप पाएंगे कि TastDialog के निर्माता निम्नलिखित लाइनों में शामिल हैं:

// Throw PlatformNotSupportedException if the user is not running Vista or beyond 
CoreHelpers.ThrowIfNotVista(); 

आप केवल Windows API कोड पैक विधानसभा के लिए एक संदर्भ में शामिल हैं, तो आप ठीक हो जाएगा । लेकिन एक सुविधा है जो वर्तमान में अपने आवेदन के लिए एक अपवाद फेंक होगा चल ओएस पर मौजूद नहीं है का उपयोग कर। यदि एक फीचर फोन करने के लिए सुरक्षित नहीं है (यानी वर्तमान ओएस पर समर्थित) की जांच करने के अधिकांश वर्गों एक स्थिर IsPlatformSupported संपत्ति में शामिल हैं।

तो आप पहले TaskDialog.IsPlatformSupported देख सकते हैं और MessageBox.Show() पर कॉल कर सकते हैं यदि आपका ओएस टास्कडिअलॉग का समर्थन नहीं करता है।

संबंधित मुद्दे