На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Jin X
  
> Установка переменной в BAT
    Здравствуйте.
    Как можно установить переменную в бат файле из своей программы.
    Т.е. бат файл вызывает мою программу, и потом может использовать значение, устоновленное ей, как %somevar%

    Пробовал:
    ExpandedWrap disabled
      SetEnvironmentVariable('somevar', test');

    ExpandedWrap disabled
      setvar.exe
      echo %somevar%

    Не работает.

    Как это можно сделать?
        Не то (
        ExpandedWrap disabled
          setvar.exe > %somevar%
          setvar.exe >> %somevar%
          setvar.exe | %somevar%
          setvar.exe > somevar
          setvar.exe >> somevar
          setvar.exe | somevar

        не работает
          Цитата zzz5 @
          не работает
          И не должно. Весь этот синтаксис для перенаправления потоков чтения/записи (файлов), а не для манипуляций переменными окружения.

          Вариантов несколько. Вот несколько.
          В программе формируешь текстовый файл setvars.bat вида
          set somevar1=value1
          set somevar2-value2
          и вызываешь всё командой
          setvar1.exe
          call setvar.bat

          Можно выдать эти строки в стандартный вывод программы и выполнить команду
          setvar2.exe >>setvar.bat
          call setvar.bat

          В Windows XP и более новых последнюю программу можно использовать ещё и так
          for /F "delims=" %%V in ('setvar2.exe') do %%V

          Можно выдавать из программы строки в виде
          somevar=value
          тогда пример с for придётся немного переписать (по мне, так даже понятнее)
          for /F "delims=" %%V in ('setvar3.exe') do set %%V

          Можно внутри программы выполнить команду, задав для неё своё окружение, но думаю для тебя это сейчас будет сложновато.
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0271 ]   [ 17 queries used ]   [ Generated: 19.03.24, 07:19 GMT ]