Как установить для окон формы приложения использует helpleecute значение true?
На мой вопрос не отвечает вопрос. Когда нам нужно установить для UseShellExecute значение True? Если вы так думаете, объясните, пожалуйста, как?
Мне нужно установить значение true для моего проекта приложения windows form до запуска процесса приложения, но я не могу найти, где в проекте мне нужно внести изменения?
Это проект приложения формы windows в visual studio 2015.
Основная точка входа для приложения выглядит следующим образом:
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
Где я должен использовать ProcessStartInfo
и указать UseShellExecute
значение?
РЕДАКТИРОВАТЬ: Большое спасибо Мэтью Уотсону, который предложил мне изменить Environment CurrentDirectory, который решил проблему! Я отмечу ваш ответ как правильный, если вы отправите его как ответ!
2 ответа
Вы можете попробовать поместить это в начало вашей программы:
Environment.CurrentDirectory = AppDomain.CurrentDomain.BaseDirectory;
Это гарантирует, что текущий рабочий каталог вашей программы (CWD) всегда будет находиться в той же папке, что и исполняемый файл при запуске вашей программы.
Я подозреваю, что происходит из-за того, что используемый вами ярлык содержит отсутствующую или неправильную папку для свойства "Начать с". Исправление этого будет другим подходом (щелкните правой кнопкой мыши ярлык, выберите " Свойства", затем вкладку " Ярлык " и введите правильную папку в разделе " Начать с ".)
Вы могли бы использовать ProcessStartInfo
и указать UseShellExecute
значение.
ProcessStartInfo startInfo = new ProcessStartInfo("exepath");
startInfo.Arguments = args; //argument
startInfo.UseShellExecute = true;
Process.Start(startInfo);