Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Запуск одного проекта из другова


Автор: 56illusion 14.9.2010, 19:43
Всем привет!!
очень надеюсь что и в этот раз вы мне поможете.
Дело такое...пишу трояна работающего с tcp/ip. client на другом компьютере должен открыть другое приложение.
тоесть Я в одном Solution объеденил 2 проекта
1.hook
2.client

из под клиента мне нужно запустить проект hook.
я помню что ето дело двух строчек кода.. только что и как писать не помню... ПООГИТЕ ПЛИЗ ))

Автор: nmn 14.9.2010, 20:08
process.start

Автор: 56illusion 14.9.2010, 20:23
Спасибо но это запускает любое приложение не имеющие отношение к моему проекту...У меня в в одном solution 2 проекта.
я продемонстрирую:
http://ipicture.ru/
в проекте client_test_1 мне нужно запустить при определённом условии проект Hook.

Автор: CYBERDREAM 14.9.2010, 21:11
можно как можно больше информации о твоем трояне? надо выслать в AVG 
(Прошу прощения за оффтоп)

Автор: nmn 14.9.2010, 22:04
Цитата(56illusion @  14.9.2010,  20:23 Найти цитируемый пост)
Спасибо но это запускает любое приложение не имеющие отношение к моему проекту

а твой проект запускает? почему?

Цитата(CYBERDREAM @  14.9.2010,  21:11 Найти цитируемый пост)
можно как можно больше информации о твоем трояне? надо выслать в AVG 

и группу захвата  smile 

некоторые прокалываются и похлеще
http://www.codeproject.com/News.aspx?ntag=45700297354503938

Автор: 56illusion 14.9.2010, 22:44
хххх ребята он кроме кражи фаилов нажатых клавишь не как вредить не будет...захотел пробраться на компьютер бывшей учительницы..
вобщем ближе к делу smile  
Process.start используеться вить тогда когда нужно запустить какоелибо приложение..например калькулятор в виндоусе..
а у меня ситуация другая..есть слиент и есть консольное приложение которое устонавливает глобальный хук на клавиатуру..
схема такова.. сервер(Я) посылает команду клиенту типа starthook... клиент в свою очиредь должен запустить проект котороый устонавливает хук.. дело в том что клиент и хук я писал в отдельных проектах...и Я не хочу сечас интегрировать код из двух проектов в один.. а просто запустить один проект с другова. Я вить картинку загрузил, там понятно про што я пишу...

Автор: nmn 14.9.2010, 23:01
так итить, чем process.start не подходит?

он не только калькулятор может запускать, он зараза все что угодно может запустить

Автор: 56illusion 15.9.2010, 12:05
Хорошо допустим я воспользуюсь етой методой... как же мне запустить второй проект??? там вить нужно написать имя приложения а у меня то целый проект...мне кажеться мы не понемаем друг друга  smile

Добавлено через 6 минут и 5 секунд
http://ipicture.ru/
вот Я типо так пишу. После точки появляеться список классов имеющихся в етом проекте.. но сам проект Hook не появляеться (((((

Автор: Fortnox 15.9.2010, 12:57
56illusion, запускать нужно не проект, а скомпилированный исполняемый файл 2 проекта.
Пункт меню Build->Build имя_проекта. Или через контекстное меню проекта в Solution Explorer -> Build.
Потом скопировать полученный файл к файлу 1 проекта, и запускать:
Код

Process.Start("имя_файла");

Автор: SmartBye 15.9.2010, 12:59
Разве можно запустить проект? Проект у тебя будет скомпилирован и уже скомпилированный файл запускаешь через процесс.старт.

Автор: 56illusion 15.9.2010, 13:28
Ок я добавил в первый проект фаил Hook.exe из папки bin->debug-> Hook.exe а потом в методе пишу так: process.start("Hook.exe");
выдаёт ошибку о том что не удаёться найти фаил...
Я думал что можно вызвать в первом проекте функцию main из второго проекта и она типо запустит весь код из второго проекта...

Автор: CYBERDREAM 15.9.2010, 13:36
1-й проект
Код

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("An attempt to run second project");
        try
        {
            wfa.Program.Main();
            Console.WriteLine("Succeed");
        }
        catch (Exception ex)
        {
            Console.WriteLine("Run failed: " + ex.Message);
        }
        Console.ReadLine();
    }
}

второй проект 
Код

public static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        public static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }

Второй прожект добавил в референс первого. 

Если тебе конечно это надо было smile 

Автор: 56illusion 15.9.2010, 14:13
Огромное спасибо всем!!! smile 
Я тут чтото намутил... добавил в первый проект ссылку на второй.. потом через using Client_Test_1; увидел классы из второго проекта...
А затем я вызвал функцию main() второго проекта и он запустился.. Должен отметить что два проекта консольные... и когда я запускаю второй проект он использует консоль первого проекта.. так и должно быть?? или же он должен свою консоль создать??

Автор: CYBERDREAM 15.9.2010, 14:20
по сути ты сделал вышеописанное мной.
На счет консолей, по идее в одной все, хотя я не уверен

Автор: 6atoh 16.9.2010, 13:01
Цитата(56illusion @  15.9.2010,  13:13 Найти цитируемый пост)
Должен отметить что два проекта консольные... и когда я запускаю второй проект он использует консоль первого проекта.. так и должно быть?? или же он должен свою консоль создать?? 

Правильно, у тебя ведь AppDomain один создается. Если хочешь две консоли - тогда только Process.Start.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)