新聞中心
Python編程語言的應(yīng)用,可以很好的幫助編程人員提高開發(fā)效率,而且其應(yīng)用范圍廣泛。在這里我們可以先通過對Python調(diào)用.net framework的了解來熟悉一下這一語言給我們帶來的功能特點。#t#

站在用戶的角度思考問題,與客戶深入溝通,找到峨山縣網(wǎng)站設(shè)計與峨山縣網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請域名、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋峨山縣地區(qū)。
1. 安裝python2.5和對應(yīng)的pywin32
2. 下載ironPython源代碼 是C#的。
我用的是IronPython1.1的版本,從codeplex網(wǎng)站下載IronPython_1_1.rar。解壓縮。
3. 用vistual studio 建立一個.NET類庫工程,工程名字為:IronPython。
把ironPython目錄下的src子目錄中的ironPython目錄的ironMath目錄里的c#源文件(不要assemblyInfo.cs)都考到你的工程目錄里。
在工程里增加剛考來的源文件。
4. 修改AssemblyInfo.cs
[assembly: ComVisible(false)]
將false 改為true
5. 在項目=>屬性=>生成里把 為COM Interop注冊 打上勾
6. 在項目=>屬性=>簽名 里把為程序集簽名 打上勾,選擇強(qiáng)名稱密鑰文件時 選擇新建,輸個文件名,比如 IronPython.snk, 也可以手動生成密鑰文件,然后在這里選擇.
在Python調(diào)用.net framework的方法中,手動生成的方法:在.Net Framework的命令行界面里用 sn -k IronPython.snk 這個命令.
7. 編譯項目生成 IronPython.dll
8. 在.Net Framework的命令行界面里用 regasm IronPython.dll 注冊COM組件
9. 在.Net Framework的命令行界面里用 gacutil -i IronPython.dll 把庫加到全局緩存里
10. 建立.net framework 的類庫。代碼如下:
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace test
- {
- public class testclass
- {
- public string func()
- {
- return "hello world";
- }
- }
- }
11. 建立test.py調(diào)用剛才寫的test.dll類庫。代碼:
- import win32com
- import win32com.client
- eng=win32com.client.Dispatch("IronPython.Hosting.PythonEngine")
- eng.execute("import clr")
- eng.execute("import sys")
- eng.execute("""sys.path.append('c:\\\\test')""")
- eng.execute("print sys.path")
- eng.execute("""clr.AddReferenceToFile("abc.dll")""")
- eng.execute("from test import *")
- eng.execute("obj = testclass()")
- eng.execute("print obj.func()")
注意:eng.execute("""sys.path.append('c:\\\\test')""")
這句是將test.dll所在的路徑添加到ironPython的sys.path中去。如果不加,AddReferenceToFile將會出錯。
以上就是Python調(diào)用.net framework的全部步驟。
文章名稱:Python調(diào)用.netframework主要操作步驟剖析
當(dāng)前URL:http://www.dlmjj.cn/article/dpdjchh.html


咨詢
建站咨詢
