Логика как обычно гдето заблудилась.
Мой последний вариант из cmd
Цитата:
reg add HKCR\Unknown\shell\openas\command /ve /t REG_EXPAND_SZ /d ^%SystemRoot^%\system32\rundll32.exe" "^%SystemRoot^%\system32\shell32.dll,OpenAs_RunDLL" "%1 /f
|
получаю что надо, но если запускаю из батника, получаю полное отсутствие переменных
Цитата:
\system32\rundll32.exe \system32\shell32.dll,OpenAs_RunDLL
|
Беру ваш код
Цитата:
reg add HKCR\Unknown\shell\openas\command /ve /t REG_EXPAND_SZ /d "%%SystemRoot%%\system32\rundll32.exe %%SystemRoot%%\system32\shell32.dll,OpenAs_RunDLL %%1" /f
|
запускаю в командной строке и просто получаю лишние проценты
Цитата:
%C:\Windows%\system32\rundll32.exe %C:\Windows%\system32\shell32.dll,OpenAs_RunDLL %%1
|
запускаю из батника и получаю что надо
Цитата:
%SystemRoot%\system32\rundll32.exe %SystemRoot%\system32\shell32.dll,OpenAs_RunDLL %1
|
То есть батник из комадной строки запускать нельзя, а только из проводника.
Какие есть решения определить откуда запущен батник ?