-
یک شنبه 26 دی 1389, 10:44 صبح
#8
کاربر دائمی
نقل قول: تولید فایل EXE از طریق برناممون
دوست عزیز منم گشتم. داخل کدوم تاپیک هست نمیدونم.
ولی این کدشه.
- string source =
- @"
- namespace Foo
- {
- public class Bar
- {
- static void Main(string[] args)
- {
- Bar.SayHello();
- }
- public static void SayHello()
- {
- System.Console.WriteLine(""Hello World"");
- }
- }
- }
- ";
و حال کامپایل این رشته
- using System;
- using System.Collections.Generic;
- //دو فضاي نامي كه براي اين منظور اضافه شدهاند
- using Microsoft.CSharp;
- using System.CodeDom.Compiler;
- namespace compilerTest
- {
- class Program
- {
- static void compileIt1()
- {
- //سورس كد ما جهت كامپايل
- string source =
- @"
- namespace Foo
- {
- public class Bar
- {
- static void Main(string[] args)
- {
- Bar.SayHello();
- }
- public static void SayHello()
- {
- System.Console.WriteLine(""Hello World"");
- }
- }
- }
- ";
- //تعيين نگارش كامپايلر مورد استفاده
- Dictionary<string, string> providerOptions = new Dictionary<string, string>
- {
- {"CompilerVersion", "v3.5"}
- };
- //تعيين اينكه كد ما سي شارپ است
- CSharpCodeProvider provider = new CSharpCodeProvider(providerOptions);
- //تعيين اينكه خروجي يك فايل اجرايي است بعلاوه مشخص سازي محل ذخيره سازي فايل نهايي
- CompilerParameters compilerParams = new CompilerParameters
- {
- OutputAssembly = "D:\\Foo.EXE",
- GenerateExecutable = true
- };
- //عمليات كامپايل در اينجا صورت ميگيرد
- CompilerResults results = provider.CompileAssemblyFromSource(compilerParams, source);
- //اگر خطايي وجود داشته باشد نمايش داده خواهد شد
- Console.WriteLine("Number of Errors: {0}", results.Errors.Count);
- foreach (CompilerError err in results.Errors)
- {
- Console.WriteLine("ERROR {0}", err.ErrorText);
- }
- }
- static void Main(string[] args)
- {
- compileIt1();
- Console.WriteLine("Press a key...");
- Console.ReadKey();
- }
- }
- }
قوانین ایجاد تاپیک در تالار
- شما نمی توانید تاپیک جدید ایجاد کنید
- شما نمی توانید به تاپیک ها پاسخ دهید
- شما نمی توانید ضمیمه ارسال کنید
- شما نمی توانید پاسخ هایتان را ویرایش کنید
-
قوانین سایت