Я могу найти в Интернете множество ответов о том, как открыть конкретный файл, например http://answers.yahoo.com/question/index?qid=20080102230630AAfu5dF

Однако мне нужно предоставить способ открытия неспецифического файла в программе, вызываемой пакетным файлом.

Для пояснения приведу пример. У пользователя есть папка со 100 файлами с расширением .xyz. Он хочет иметь возможность дважды щелкнуть ЛЮБОЙ файл и открыть его в «XYZ Viewer», но для запуска XYZ Viewer ему нужно запустить командный файл, который изменяет его реестр, а затем запускает фактический XYZ Viewer .exe.

Если вы выберете пакетный файл в качестве программы по умолчанию с помощью флажка «Всегда использовать выбранную программу для открытия файла такого типа», программа откроется, но без использования стандартной функции Windows открытия файла, запускающей запуск программа.

Есть ли способ запустить программу через командный файл и одновременно запустить программу и открыть тот файл, который вызвал запуск программы?

Я подозреваю, что это невозможно, но любые предложения будут приняты с благодарностью!

Приветствия .

Изменить: программа в конечном итоге поддерживает открытие файла, помещенного в качестве аргумента для него.

Мой код
reg import c: \ regent \ 31.2.03.reg
запустить C: \ Program \ Program.exe

2
John Dudebro 20 Фев 2013 в 19:40

1 ответ

Лучший ответ

Поддерживает ли программа в конечном итоге открытие файла, указанного в качестве аргумента? В примере, который вы связали, mspaint открывает первый заданный ему параметр.

Если ваш пакетный файл в настоящее время этого не делает, вам придется отредактировать его, чтобы он содержал пакетный параметр (ы).

См. http: // www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true для получения более полной документации по нему.

По сути, вы хотите добавить% 1 где-то вроде:

reg import c:\regent\31.2.03.reg
start C:\Program\Program.exe %1
2
Pricey 21 Фев 2013 в 18:03
Увы, переменная% 0 относится к пакетному файлу, а не к файлу, запускающему запуск программы, поэтому я боюсь, что это не сработает. Однако я только что попробовал% 1, и, похоже, это сработало. Спасибо большое.
 – 
John Dudebro
20 Фев 2013 в 20:44