Почему Process.Start () работает в VS2019, но не в VS2022? [дублировать]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Почему Process.Start () работает в VS2019, но не в VS2022? [дублировать]

Сообщение Anonymous »

Я написал простое приложение под Visual Studio 2019, которое работает просто отлично.
Я сейчас пытаюсь повторить его под Visual Studio 2022.
У меня есть событие Click для метки, которая открывает документ, используя функцию процесса. < /p>
Process.Start(filespec);< /code> < /p>
, где FilePec - это конкатенация как пути, так и имени файла.
Это открывает файл .docx (используя WPS Office).
Поскольку ассоциация файла на моем компьютере уже настроена для WPS, мне нужно только предоставить имя файла и его местоположение. VS2022, it raises an exception !
I have looked for solutions, but they all show the same thing - which is what I have implemented - but with no joy !
Here is the exception raised :-
An error occured trying to start process
'D:\People\Peter\Spirituallity\Brene Brown\Brene Brown.docx' with working directory
'D: \ Documents \ Visual Studio 2022 \ Projects \ Dave Tomlinson \ Bin \ Debug \ Net8.0-Windows'.
Указанный исполняемый файл не является допустимым приложением для этой платформы ОС. < /P>
Вот конкретный код:-< /p>
private void InvokeApplication(string fileName, string fileLocation)
{
// Activate the expected response for this Shortcut

string FileSpec;

if (fileName == "")
{
FileSpec = fileLocation;
}
else
{
FileSpec = fileLocation + "\\" + fileName;
}

try
{
// Invoke the required file via its associated App - using the Windows O/S file associations
Process.Start(FileSpec);
}
catch(Exception ex)
{
MessageBox.Show("Unable to invoke the file or its Application\r\n\r\n" + ex.Message);
}
}
< /code>
Это, конечно, требует:-< /p>
Использование system.diagnostics; < /p>
, который предоставляется в верхней части моего класса < /p>
Так называется:-< /p>
< /p>
. private void lblLink_Click(object sender, EventArgs e)
{
InvokeApplication("Brene Brown.docx", @"D:\People\Peter\Spirituallity\Brene Brown");
}
< /code>
Я также попробовал это:-< /p>
Process process = new Process();
process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = "Brene Brown.docx";
process.StartInfo.Arguments = @"D:\People\Peter\Spirituallity\Brene Brown\";
process.Start();
< /code>
У меня был какой-то успех, используя эту тестовую часть:-< /p>
Process process = new Process();
process.StartInfo.UseShellExecute = true;
process.StartInfo.FileName = "notepad.exe";
process.StartInfo.Arguments = @"D:\People\Peter\Spirituallity\Brene Brown\Notepad Test.txt";
process.Start();
Process process = new Process();
< /code>
Блокнот открылся, но не использовал указанный файл - исключение снова было поднято. VS2019 нет?

Подробнее здесь: https://stackoverflow.com/questions/797 ... -in-vs2022
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Process Process Process с более низким использованием процессора
    Anonymous » » в форуме JAVA
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Process Process Process с более низким использованием процессора
    Anonymous » » в форуме JAVA
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • OpenAccessenhancer работает в VS2017 и VS2019, но не в VS2022
    Anonymous » » в форуме C#
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • OpenAccessenhancer работает в VS2017 и VS2019, но не в VS2022 (решенная, но не понятая)
    Anonymous » » в форуме C#
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • OpenAccessenhancer работает в VS2017 и VS2019, но не в VS2022 (решенная, но не понятая)
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»