• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

правильний аргумет при запуске приложения из С#

  • Автор темы polishuchka
  • Дата начала
Статус
Закрыто для дальнейших ответов.
P

polishuchka

Такой кусос кода запускает Word (можно другое приложение, указав его в параметре для ProcessStartInfo ) и откривает файл с именем, заданным в docname:
using System;
using System.Diagnostics;
.......
ProcessStartInfo psi = new ProcessStartInfo( "C:\\Program Files\\Microsoft Office\\OFFICE11\\WINWORD.EXE");
docname= "c:\Имя_файла" ;
psi.Arguments = docname;
Process p = new Process();
p.StartInfo = psi;
p.Start();
Работает нормально, если имя файла не содержит пробел. Например
если docname="c:\Имя_файла", то файл откривается, а если docname="c:\Имя файла", то Word интерпретирует
его как 2 аргумента и начинает окривать сначала "Имя", а потом "файла" и не находит, естественно. Скобки как вот docname= "(c:\Имя файла)"; не помогают. Вопрос; Как передать аргумент с пробелами так, чтобы он интерпретировался как 1 аргумент, если он содержит пробелы.
 
L

LuMee

Предлагаю вместо скобок попробовать кавычки:
Код:
docname = "\"Какое-то имя файла\"";
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!