के रूप में कैसे चलाएं, मान लें कि मेरे पास एक पुराना एप्लीकेशन है जो बाहरी असेंबली लोड करने का प्रयास करेगा।सीएलआर 2 एप्लिकेशन को सीएलआर 4 एप्लिकेशन
- वर्ष आवेदन CLR करने के लिए 2.
- संकलित किया गया है नई विधानसभा CLR करने के लिए 4.
संकलित किया गया है मैं CLR 4. मुझे याद है अंदर है कि पुराने आवेदन को चलाने के लिए सक्षम होने के लिए चाहते हैं कुछ xml manifest magic शामिल थे।
मैं यह प्रकट करने के लिए उस मैनिफेस्ट xml फ़ाइल को कैसे बना सकता हूं कि oldapplication.exe CLR 4 के अंतर्गत चलाएगा?
मुझे कुछ सुझाव मिले, लेकिन वे मेरे लिए काम नहीं कर रहे हैं।
- http://www.mibuso.com/forum/viewtopic.php?f=23&t=33840&view=next
- http://geekswithblogs.net/technetbytes/archive/2007/06/01/112928.aspx
- http://msdn.microsoft.com/en-us/library/a5dzwzc9.aspx
oldapplication.exe.config:
<?xml version ="1.0"?>
<configuration>
<startup>
<!--set the appropriate .net version-->
<requiredRuntime version="4.0.0.0"/>
</startup>
</configuration>
जबकि एक और शॉट मैं अपने templ के रूप में काम करने के लिए इस फ़ाइल मिली दे रही है खा लिया:
C: \ Windows \ Microsoft.NET \ फ्रेमवर्क \ v4.0.20506 \ Aspnet_regsql.exe.config
<?xml version ="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0.20506"/>
<requiredRuntime version="v4.0.20506" safemode="true"/>
</startup>
</configuration>
मैं भी वर्तमान CLR रिपोर्ट करने के लिए कोड अद्यतन:
Console.WriteLine(typeof(object).Assembly.ImageRuntimeVersion);
यह अब काम करता है!
+1। बस यह भी पूछने वाला था, क्योंकि मुझे वास्तव में उचित पूंछ कॉल समर्थन के लिए .NET 4 के 64-बिट जेआईटी की आवश्यकता है। – leppie