C#嵌入IronPython脚本示例(hello world)

简介:

随着项目的逐渐收尾, 对IronPython脚本也越来越熟悉,这里为IronPython脚本感兴趣但不入门的朋友写几篇使用心得,这是第一个:最简单的hello world程序。

        首先,我们必须有一个IronPython脚本引擎库(IronPython.dll),我用的版本是V1.0,你可以在网上直接下到相关源码,编译后即生成IronPython.dll。

        新建一个C#桌面程序,引用该库后,我们便开始编写第一个程序。

        下面是C#中的代码:

 
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.ComponentModel;  
  4. using System.Data;  
  5. using System.Drawing;  
  6. using System.Text;  
  7. using System.Windows.Forms;  
  8. using IronPython.Hosting;  
  9.  
  10. namespace TestIronPython  
  11. {  
  12.      
  13.     public partial class Form1 : Form  
  14.     {  
  15.  
  16.        public Form1()  
  17.         {  
  18.             InitializeComponent();          
  19.         }  
  20.           
  21.         private void button1_Click(object sender, EventArgs e)  
  22.         {  
  23.             PythonEngine scriptEngine = new PythonEngine();  
  24.             scriptEngine.Execute(textBox1.Text);  
  25.         }  
  26.  
  27.     }  
  28.  
  29. }  
  30.  

     代码很简单,声明了一个scriptEngine 实例,直接用Execute执行代码即可。下面看看py的代码该怎么写:

 
  1. import clr  
  2. clr.AddReferenceByPartialName("System.Windows.Forms")  
  3. clr.AddReferenceByPartialName("System.Drawing")  
  4. from System.Windows.Forms import *  
  5. from System.Drawing import *  
  6. MessageBox.Show("Hello World!")  
  7.  

     第一句代码很重要,导入.net clr,用clr的AddReferenceByPartialName方法加载我们熟悉的System.Windows.Forms和System.Drawing库,最后可以直接执行.net中的MessageBox方法。

     运行后,直接单击button1,即可弹出一个对话框"Hello World!"

    怎么样,是不是很简单?!

 















本文转自yefanqiu51CTO博客,原文链接:http://blog.51cto.com/yfsoft/323429,如需转载请自行联系原作者

相关文章
|
20天前
|
图形学 C# 开发者
全面掌握Unity游戏开发核心技术:C#脚本编程从入门到精通——详解生命周期方法、事件处理与面向对象设计,助你打造高效稳定的互动娱乐体验
【8月更文挑战第31天】Unity 是一款强大的游戏开发平台,支持多种编程语言,其中 C# 最为常用。本文介绍 C# 在 Unity 中的应用,涵盖脚本生命周期、常用函数、事件处理及面向对象编程等核心概念。通过具体示例,展示如何编写有效的 C# 脚本,包括 Start、Update 和 LateUpdate 等生命周期方法,以及碰撞检测和类继承等高级技巧,帮助开发者掌握 Unity 脚本编程基础,提升游戏开发效率。
32 0
|
20天前
|
数据安全/隐私保护 C# UED
利用 Xamarin 开展企业级移动应用开发:从用户登录到客户管理,全面演示C#与Xamarin.Forms构建跨平台CRM应用的实战技巧与代码示例
【8月更文挑战第31天】利用 Xamarin 进行企业级移动应用开发能显著提升效率并确保高质量和高性能。Xamarin 的跨平台特性使得开发者可以通过单一的 C# 代码库构建 iOS、Android 和 Windows 应用,帮助企业快速推出产品并保持一致的用户体验。本文通过一个简单的 CRM 示例应用演示 Xamarin 的使用方法,并提供了具体的代码示例。该应用包括用户登录、客户列表显示和添加新客户等功能。此外,还介绍了如何增强应用的安全性、数据持久化、性能优化及可扩展性,从而构建出功能全面且体验良好的移动应用。
26 0
|
1月前
|
API C# 数据库
SemanticKernel/C#:实现接口,接入本地嵌入模型
SemanticKernel/C#:实现接口,接入本地嵌入模型
51 1
|
1月前
|
C#
C# WPF 将第三方DLL嵌入 exe
C# WPF 将第三方DLL嵌入 exe
31 0
|
1月前
|
API C#
SemanticKernel/C#:使用Ollama中的对话模型与嵌入模型用于本地离线场景
SemanticKernel/C#:使用Ollama中的对话模型与嵌入模型用于本地离线场景
63 0
|
1月前
|
机器学习/深度学习 数据挖掘 C#
ONNX Runtime入门示例:在C#中使用ResNet50v2进行图像识别
ONNX Runtime入门示例:在C#中使用ResNet50v2进行图像识别
51 0
|
3月前
|
C#
C#数值类型介绍及示例
C#数值类型介绍及示例
|
4月前
|
SQL 存储 Oracle
C#利用IDbCommand实现通用数据库脚本执行程序
C#利用IDbCommand实现通用数据库脚本执行程序
|
4月前
|
监控 安全 C#
开发公司电脑监控软件的报警系统:一个C#示例
在当今数字化时代,企业对其计算机网络和系统的安全性和稳定性越来越重视。为了确保员工遵守公司政策、保护机密信息以及监控系统的正常运行,开发一种可靠的公司电脑监控软件变得至关重要。本文将介绍如何使用C#编写一个简单而有效的报警系统,以便监控关键数据并在必要时发出警报。
140 0