Войти

Показать полную графическую версию : [решено] Поиск и запуск файла определенной программой


ufooo
03-05-2015, 20:08
Как .bat кодом отыскать и перенаправить запуск файла определенной программой.
Пример варианта: файл "Win.doc" например находится здесь- ( %Systemdrive%\Users\%Username%\AppData\Win.doc )
И после нахождения файла Win.doc, направить его открытие на программу: ( %Systemdrive%\Program Files\Microsoft Office\OFFICE11\WINWORD.exe )
Если можно напишите .bat код этой функции.

mwz
04-05-2015, 00:02
ufooo, это вопрос курсовой работы?

ufooo
04-05-2015, 00:12
это вопрос курсовой работы? »
Нет.

mwz
04-05-2015, 00:35
ufooo, искать по всем дискам, в т.ч. сетевым?

ufooo
04-05-2015, 00:59
искать по всем дискам

iccup.platoon@vk
04-05-2015, 03:18
Божечки.
Предисловие: сначала читаешь, потом выполняешь.

0) Можно попробовать так:

@echo off
set file=%Systemdrive%\Users\%Username%\AppData\Win.doc
set program=%Systemdrive%\Program Files\Microsoft Office\OFFICE11\WINWORD.exe
start "" "%program%" "%file%"

1) Ассоциируем файл НАВСЕГДА (пока не исправишь) с прогой по пути %Systemdrive%\Program Files\Microsoft Office\OFFICE11\WINWORD.exe и тут же его запускаем.

@echo off
ASSOC .doc=Word.Document
FTYPE Word.Document="%Systemdrive%\Program Files\Microsoft Office\OFFICE11\WINWORD.exe" "%1"
%Systemdrive%\Users\%Username%\AppData\Win.doc

Не забудь отписаться о результатах.

ufooo
04-05-2015, 04:32
Так работает.
@echo off
set file=%Systemdrive%\Users\%Username%\AppData\Win.doc
set program=%Systemdrive%\Program Files\Microsoft Office\OFFICE11\WINWORD.exe
start "" "%program%" "%file%"

mwz
04-05-2015, 07:58
ufooo, только эта запись не ищет файл Win.doc, а берёт его с заранее известного места.

А вам ведь надо найти (а если их несколько, в разных каталогах или на разных дисках?), а затем пустить на исполнение.

ufooo
04-05-2015, 17:16
Так.
@Echo off
setlocal enableextensions enabledelayedexpansion
For %%i In (c d e f g h i j k l m n o p q r s t u v w x y z) Do (
For /F "Delims=" %%a In ('DIR /B/S/A-D "%%i:\Winword.exe" 2^>Nul') Do set temp1=%%a)
endlocal & set proga=%temp1%
setlocal enableextensions enabledelayedexpansion
For %%i In (c d e f g h i j k l m n o p q r s t u v w x y z) Do (
For /F "Delims=" %%a In ('DIR /B/S/A-D "%%i:\Win.doc" 2^>Nul') Do set temp2=%%a)
endlocal & set file=%temp2%
"%proga%" "%file%"
Exit /b




© OSzone.net 2001-2012