Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Балиев от 02-07-2020, 18:43:05

Название: Запуск внешнего exe-файла из приложения.
Отправлено: Балиев от 02-07-2020, 18:43:05
Ситуация следующая: мне нужно запустить exe-файл из приложения на C#. Еxe-шник лежит в той же папке, что и приложение ("./Contents/bin/"). Запускаю следующим образом:
Код - C# [Выбрать]
  1.                
  2. Process startLCh = new Process();
  3. startLCh = Process.Start("LCh.exe", langShort + " " + activationKey);
  4. startLCh.WaitForExit();
  5.  
Проблема в том, что в VS при отладке все работает, а при инсталляции приложения в AutoCAD - нет. Говорит, что не может найти файл ("LCh.exe"). Что я не так делаю?
Заранее благодарен.
Название: Re: Запуск внешнего exe-файла из приложения.
Отправлено: Александр Ривилис от 02-07-2020, 21:02:29
Что я не так делаю?
Не указываешь путь к exe-файлу.
Название: Re: Запуск внешнего exe-файла из приложения.
Отправлено: Балиев от 02-07-2020, 21:44:47
Что я не так делаю?
Не указываешь путь к exe-файлу.
Относительно какого каталога? "Contents"?
Название: Re: Запуск внешнего exe-файла из приложения.
Отправлено: Александр Ривилис от 02-07-2020, 22:03:44
Что я не так делаю?
Не указываешь путь к exe-файлу.
Относительно какого каталога? "Contents"?
Не относительный, а абсолютный путь к exe-файлу.
Название: Re: Запуск внешнего exe-файла из приложения.
Отправлено: Александр Ривилис от 02-07-2020, 22:11:56
Если exe-файл лежит в том же каталоге, что и dll-файл, то:
Код - C# [Выбрать]
  1. string dllPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
Название: Re: Запуск внешнего exe-файла из приложения.
Отправлено: Балиев от 02-07-2020, 22:25:23
    string dllPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

Спасибо за подсказку, а то я еще с определением пути бы ковырялся...