资源简介
自己做的关于c#动态执行代码,读取txt文档中的代码
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.CodeDom.Compiler;
using System.Reflection;
using Microsoft.CSharp;
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button2_Click(object sender EventArgs e)
{
string strLine;
string path;
path = Application.StartupPath + “\\读取代码.txt“;
string st = ““;
FileStream aFile = new FileStream(path FileMode.Open);
StreamReader sr = new StreamReader(aFile);
strLine = sr.ReadLine();
while (strLine != null)
{
st = st + strLine;
st = st + “\n“;
strLine = sr.ReadLine();
}
sr.Close();
string sum = GenerateCode() + “\n“ + st + GenerateCode1();
if (sum != null)
{
// 1.CSharpCodePrivoder
CSharpCodeProvider objCSharpCodePrivoder = new CSharpCodeProvider();
// 2.ICodeComplier
//ICodeCompiler objICodeCompiler = objCSharpCodePrivoder.CreateCompiler();
// 3.CompilerParameters
CompilerParameters objCompilerParameters = new CompilerParameters();
//此处添加引用,使用的代码必须在此处有引用否则会编译错误
objCompilerParameters.ReferencedAssemblies.Add(“System.dll“);
objCompilerParameters.ReferencedAssemblies.Add(“System.Windows.Forms.dll“);
objCompilerParameters.GenerateExecutable = false;
objCompilerParameters.GenerateInMemory = true;
// 4.CompilerResults
CompilerResults cr = objCSharpCodePrivoder.CompileAssemblyFromSource(objCompilerParameters sum);
if (cr.Errors.HasErrors)
{
Console.WriteLine(“编译错误:“);
foreach (CompilerError err in cr.Errors)
{
Console.WriteLine(err.ErrorText);
}
}
else
{
Assembly objAssembly = cr.CompiledAssembly;
object objDynamicAssenmbly = objAssembly.CreateInstance(“Mode.mode“);
MethodInfo objMI = objDynamicAssenmbly.GetType().GetMethod(“OutPut“);
objMI.Invoke(objDynamicAssenmbly null);
}
}
}
public static string GenerateCode()
{
StringBuilder sb = new StringBuilder();
sb.Append(“using System;“);
// sb.Append(Environment.NewLine);
sb.Append(“using System.Windows.Fo
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 10240 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\bin\Debug\WindowsFormsApplication2.exe
文件 28160 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\bin\Debug\WindowsFormsApplication2.pdb
文件 14328 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\bin\Debug\WindowsFormsApplication2.vshost.exe
文件 490 2009-06-11 05:14 读取文档中的代码\WindowsFormsApplication2\bin\Debug\WindowsFormsApplication2.vshost.exe.manifest
文件 34 2011-11-16 10:10 读取文档中的代码\WindowsFormsApplication2\bin\Debug\读取代码.txt
文件 4156 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\Form1.cs
文件 2106 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\Form1.Designer.cs
文件 5814 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\Form1.resx
文件 2230 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.csproj.FileListAbsolute.txt
文件 847 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.csproj.GenerateResource.Cache
文件 10240 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.exe
文件 180 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.Form1.resources
文件 28160 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.pdb
文件 180 2011-11-16 14:35 读取文档中的代码\WindowsFormsApplication2\obj\Debug\WindowsFormsApplication2.Properties.Resources.resources
文件 505 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Program.cs
文件 1380 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties\AssemblyInfo.cs
文件 2898 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties\Resources.Designer.cs
文件 5612 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties\Resources.resx
文件 1109 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties\Settings.Designer.cs
文件 249 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties\Settings.settings
文件 3759 2011-11-16 14:35 读取文档中的代码\WindowsFormsApplication2\WindowsFormsApplication2.csproj
文件 962 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2.sln
..A..H. 15360 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2.suo
目录 0 2011-11-16 10:04 读取文档中的代码\WindowsFormsApplication2\obj\Debug\Refactor
目录 0 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\obj\Debug\TempPE
目录 0 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\bin\Debug
目录 0 2011-11-19 20:53 读取文档中的代码\WindowsFormsApplication2\obj\Debug
目录 0 2011-11-16 10:43 读取文档中的代码\WindowsFormsApplication2\bin
目录 0 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\obj
目录 0 2011-11-15 21:21 读取文档中的代码\WindowsFormsApplication2\Properties
............此处省略5个文件信息
- 上一篇:C#从现象到本质,随书源码。
- 下一篇:微博数据复杂网络用不了,主要转发关系
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论