Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 13
1

Динамическое выполнение кода, хранящегося в отдельном файле

29.12.2014, 12:12. Просмотров 1741. Ответов 6
Метки нет (Все метки)

Приветствую всех
У меня небольшая проблема: у меня лежит код на диске C (C:\code.cs), вот он:
C#
1
2
Console.Write("TestCode");
Console.Read ();
Мне нужно чтобы программа всавляла его сюда:
C#
1
2
3
4
5
public static voild Main (string[] args)
{
Console.Write ("Выполнение кода C:\code.cs");
// <-----  Вот сюда он должен бвть вставлен.
}
P. S. Код не должен один раз загружатся туда, он должен загружаться туда при каждом запуске программы.
Помогите пожалуйста.

Добавлено через 45 минут
Немного ошибся: я там @ забыл поставить.
C#
1
Console.Write (@"Выполнение кода C:\code.cs");
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.12.2014, 12:12
Ответы с готовыми решениями:

Как реализовать динамическое выполнение кода
Добрый день! Пишу программу, которая ищет ошибке в базе данных. Программа использует несколько...

Для произвольного текста, хранящегося в файле, напечатать и удалить слова заданной длины
Для произвольного текста, хранящегося в файле, напечатать и удалить слова заданной длины. Каким...

Выполнение метода в отдельном потоке
В моей программе есть метод авторизации на одном сайте, вызываю вот так:...

Выполнение длительных вычислений и операций в отдельном потоке
Добрый вечер. Возникла проблема с вычислениями. Из базы данных (файл) читаются числа и...

6
13 / 13 / 8
Регистрация: 11.10.2013
Сообщений: 102
29.12.2014, 12:13 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System.Diagnostics;
using System.IO;
using System.Threading;
 
namespace ConsoleApplication3 {
    class Program {
        static void Main(string[] args) {
            const string tempFileName = "temp.cs";
            const string codeFileName = "code.cs";
            const string start = "using System; namespace ConsoleApplication3 {class Program {static void Main(string[] args) {";
            const string finish = "}}}";
 
            File.WriteAllText(tempFileName, start);
            string testCode = File.ReadAllText(codeFileName);
            File.AppendAllText(tempFileName, testCode);
            File.AppendAllText(tempFileName, finish);
 
            Process.Start(@"C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe", tempFileName);
            Thread.Sleep(5000); //ждём несколько секунд, пока компилятор скомпилирует
            Process.Start(Path.GetFileNameWithoutExtension(tempFileName) + ".exe");
        }
    }
}
Нужно обратить внимание на версию фреймворка, для которой будете запускать компилятор.
1
3 / 3 / 1
Регистрация: 14.12.2014
Сообщений: 20
29.12.2014, 12:19 3
Лучший ответ Сообщение было отмечено murzik_p как решение

Решение

Вот накопал - ссылка
0
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 13
29.12.2014, 12:29  [ТС] 4
Все просто супер, но если я добавлю формы, то как мне быть? Формы это вроде отдельный код.
0
3 / 3 / 1
Регистрация: 14.12.2014
Сообщений: 20
29.12.2014, 12:35 5
Динамически отрисовывать?
Но не проще ли заранее создать формы?
0
13 / 13 / 8
Регистрация: 11.10.2013
Сообщений: 102
29.12.2014, 12:35 6
Лучший ответ Сообщение было отмечено murzik_p как решение

Решение

По ссылке выше пример с формами. Да и подход более правильный)
1
Администратор
Эксперт .NET
8957 / 4233 / 743
Регистрация: 17.04.2012
Сообщений: 9,073
Записей в блоге: 14
29.12.2014, 12:41 7
По идее, для таких целей стоит использовать динамическую компиляцию, но рефлексия - не самая простая для понимания вещь.
Динамическая компиляция кода в приложении Windows Forms
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.12.2014, 12:41

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Выполнение метода в отдельном потоке без await/async
В десктопном WPF проекте с .Net 4.0 необходимо сделать так: private void...

Выполнение метода в отдельном потоке с возможностью его остановки
Поясните пожалуйста как выполнить определенный метод в отдельном потоке, чтоб его можно было...

Выполнение длительных операций в отдельном потоке с отображением этапов работы пользователю
Например есть код: private void button1_Click(object sender, EventArgs e) {...

Выполнение кода в отдельном потоке
Итак есть форма. На ней кнопочка. Под кнопочкой трудоемкий алгоритм. Я хочу чтобы при нажатии на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.