<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc="http://microsoft.com/officenet/conferencing" xmlns:D="DAV:" xmlns:Repl="http://schemas.microsoft.com/repl/" xmlns:mt="http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda="http://www.passport.com/NameSpace.xsd" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs="http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p="http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss="http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi="http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi="http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp="http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl="http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl="http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="&#1;" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.apple-style-span
        {mso-style-name:apple-style-span;}
span.apple-tab-span
        {mso-style-name:apple-tab-span;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thanks Biduik,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>I will need this in a few short weeks.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> pythondotnet-bounces+btribble=ea.com@python.org [mailto:pythondotnet-bounces+btribble=ea.com@python.org] <b>On Behalf Of </b>Oleksii Bidiuk<br><b>Sent:</b> Monday, January 17, 2011 8:06 AM<br><b>To:</b> pythondotnet@python.org<br><b>Subject:</b> [Python.NET] Python.NET and VS2001/.NET 4.0<o:p></o:p></span></p></div><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Hi All,<o:p></o:p></p><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>I hope this will help some people like me searching for an answer. Several steps were mentioned by other people as well, but I haven't seen a step-by-step guide. It is not my intention to duplicate other posts in that sense, but rather have all-in-one post.<o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>Here is how I've got VS2010 and .NET 4.0 working with the revision 119 of the Python.NET having Python 2.6 installed. Note that the latest trunk (revision 122) gave me some problems, so I have basically reverted changes to match 119 for the time being.<o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>1. Get the sources (tarball from sourceforge or directly from SVN)<o:p></o:p></p></div><div><p class=MsoNormal>2. Open the&nbsp;pythonnet.sln with VS2010 and convert to 2010 format (will happen automagically)<o:p></o:p></p></div><div><p class=MsoNormal>3. Change the target framework to 4. Follow the following step for EACH project<o:p></o:p></p></div><div><p class=MsoNormal>&nbsp;&nbsp; &nbsp;3.1. Right-click on the project name and select &quot;Properties&quot;<o:p></o:p></p></div><div><p class=MsoNormal>&nbsp;&nbsp; &nbsp;3.2. Select the &quot;Application&quot; tab on the left (if not selected yet)<o:p></o:p></p></div><div><p class=MsoNormal>&nbsp;&nbsp; &nbsp;3.3. Change the &quot;Target framework&quot; to &quot;.NET Framework 4&quot;<o:p></o:p></p></div><div><p class=MsoNormal>4.&nbsp;<span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>Open the <a href="http://clrmodule.il">clrmodule.il</a> and change the lines with the version number in the following piece of code&nbsp;</span></span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>.assembly extern mscorlib<o:p></o:p></span></span></p><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>{<o:p></o:p></span></span></p><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>     .publickeytoken = (B7 7A 5C 56 19 34 E0 89 )<o:p></o:p></span></span></p><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>     .ver </span></span><span style='font-family:"Courier New"'>2<span class=apple-tab-span>:0:0:0<o:p></o:p></span></span></p><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>}</span><o:p></o:p></span></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-tab-span>t</span>o have<o:p></o:p></p></div><div><p class=MsoNormal><br><br><span class=apple-tab-span><o:p></o:p></span></p></div><div><p class=MsoNormal><span class=apple-tab-span><span style='font-family:"Courier New"'>     </span></span><span style='font-family:"Courier New"'>.ver 4:0:0:0</span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>5. Open the buildclrmodule.bat and change the&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'>%windir%\Microsoft.NET\Framework\</span><span class=apple-style-span><span style='font-size:13.5pt;font-family:"Courier New"'>v2.0.50727</span></span><span style='font-family:"Courier New"'>\ilasm /nologo /quiet /dll %ILASM_EXTRA_ARGS% /include=%INCLUDE_PATH% /output=%OUTPUT_PATH% %INPUT_PATH%</span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>to<o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span style='font-family:"Courier New"'>%windir%\Microsoft.NET\Framework\v4.0.30319\ilasm /nologo /quiet /dll %ILASM_EXTRA_ARGS% /include=%INCLUDE_PATH% /output=%OUTPUT_PATH% %INPUT_PATH%</span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>5. Recompile the whole solution, ignore the deprecation warnings. </span></span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>Now you have all necessary files under the pythonnet folder where you have the sources. You need clr.pyd, python.exe and Python.Runtime.dll. </span></span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>Test</span></span><o:p></o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>Run the newly comiled python.exe </span></span><o:p></o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>Type the following</span></span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal><span class=apple-style-span><span style='font-family:"Arial","sans-serif"'>&gt;&gt;&gt; import System &gt;&gt;&gt; print System.Environment.Version 4.0.30319.1</span></span><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>The last line proves that you're using hte 4.0 runtime. The precomiled binaries available from Sourceforge would show&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal>2.0.50727.3615<o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>This is also posted with somewhat better formatting under <a href="http://blog.bidiuk.com/2011/01/python-net-and-vs2010-net-4/">blog.bidiuk.com/2011/01/python-net-and-vs2010-net-4/</a><o:p></o:p></p></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div><div><p class=MsoNormal>Comments and suggestions are welcome!<o:p></o:p></p></div><div><p class=MsoNormal>-- <br>oleksii<o:p></o:p></p></div></div></body></html>