Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Запуск ПО с привода после определения самого привода... (http://forum.oszone.net/showthread.php?t=323611)

meGangstaWorld 07-02-2017 21:45 2709812

Запуск ПО с привода после определения самого привода...
 
Ребят, приветствую всех.
Не раз форум меня спасал в свое время, года 3 как не заходил сюда))
Суть такова, мне нужен код для командной строки, что-бы запустить файл на диске, буква диска может быть разной.
Надо что-бы он определил привод и нашел в директории этот файл и запустил его.

Надеюсь на Вашу помощь, за ранее благодарен!

p.s Нашел в своих старых сообщениях этот код, тем кто разбирает будет легче переделать.
Код:

@Echo off

:: Находим диск
for %%d 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 if exist %%d:\SetupRes\lang\russian.lng set DiskDrive=%%d:

:: Определяем разрядность ОС и копируем файл russian.lng в нужную директорию
Set xOS=x64
If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86
If %xOS%==x86 (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programfiles(x86)%"\Programma\lang) Else (xcopy "%DiskDrive%\SetupRes\lang\russian.lng" /e "%programFiles%"\Programma\lang)

Exit


Iska 07-02-2017 23:51 2709836

Ну, и? В чём проблема-то? Заменяете …%%d:\SetupRes\lang\russian.lng set DiskDrive=%%d: на …"%%d:\Путь\Имя.exe" "%%d:\Путь\Имя.exe" или …"%%d:\Путь\Имя.exe" start "" "%%d:\Путь\Имя.exe". Последующее попросту выкидаваете.

meGangstaWorld 08-02-2017 09:55 2709891

Iska, ранее ты мне не раз помогал)
Проблема в том что Я вообще не разбираюсь и не понимаю, поэтому обратился на форум.
Пожалуйста, сделай готовый вариан

Iska 08-02-2017 12:06 2709920

meGangstaWorld, надо учиться. Не боги горшки обжигают.
Код:

@Echo off

for %%d 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 if exist "%%d:\Путь\Имя.exe" "%%d:\Путь\Имя.exe"


greg zakharov 08-02-2017 12:35 2709935

Код:

@echo off
  setlocal enabledelayedexpansion
    for /l %%i in (97, 1, 122) do (
      cmd /c exit /b %%i
      set "map=!map!!=exitcodeascii!:;"
    )
    set "map=!map:~0,-1!"
    for %%i in ("!map:;=";"!") do (
      set "f=%%~i\mypocket*.msi"
      if exist "!f!" set "d=%%~i"&goto:setup
    )
    :setup
    if /i "%processor_architecture%" equ "x86" set "p=!d!\mypocket-x86.msi"
    if /i "%processor_architecture%" equ "x64" set "p=!d!\mypocket-x64.msi"
    echo !p!
  endlocal
exit /b

Переменная PROCESSOR_ARCHITECTURE - значение поля wProcessorArchitecture структуры SYSTEM_INFO, которое, как написано в MSDN, указывает на "processor architecture of the installed operating system".


Время: 00:45.

Время: 00:45.
© OSzone.net 2001-