Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] При конверте .bat в .exe не работают переменные

Ответить
Настройки темы
CMD/BAT - [решено] При конверте .bat в .exe не работают переменные

Пользователь


Сообщения: 78
Благодарности: 14

Профиль | Отправить PM | Цитировать


Здравствуйте, написал батник, при конверте которого в .exe через программу "Quick Batch file compiler" перестают работать некоторые %переменные%.
Сам батник работает, но при конверте которого в .exe перестаёт работать. Чтобы понять в чём проблема, оставил батнике лишь строчку attrib +h %0 и переконвертировал в .exe и запустив, понял, что не работают переменныя %0 и скорей всего остальные его расширения.

Код: Выделить весь код
@echo off
attrib +h %0
if not exist "%systemroot%\%~nx0" echo F | xcopy %~nx0 "%systemroot%\%~nx0" /h /y
if %0=="%systemroot%\%~nx0" goto end
echo del /f /q /a h %~nx0 > un%~n0.bat
attrib +h un%~n0.bat
echo del /f /q /a h un%~n0.bat >> un%~n0.bat
start /min cmd /C un%~n0.bat
:end
exit
Тот же код, только с комментариями:
Код: Выделить весь код
@echo off
rem Делаем себя скрытым
attrib +h %0
rem Проверяем есть ли наша копия в %systemroot%, если нету копируем себя туда
if not exist "%systemroot%\%~nx0" echo F | xcopy %~nx0 "%systemroot%\%~nx0" /h /y
rem Проверяем свою директорию с %systemroot%, если мы находимся в %systemroot%, то заканчиваем сценарий. Это чтобы мы не удалили себя же когда будет находиться в %systemroot%.
if %0=="%systemroot%\%~nx0" goto end
rem Создаём батник, который удалит первый батник, потом себя.
echo del /f /q /a h %~nx0 > un%~n0.bat
echo del /f /q /a h un%~n0.bat >> un%~n0.bat
rem Делаем созданный батник скрытым
attrib +h un%~n0.bat
rem Запускаем второй батник и заканчиваем сценарие
start /min cmd /C un%~n0.bat
:end
exit
Эти переменные я написал чтобы не было привязки к пути и имени файла.
Как преодолеть эту проблему, что можно сделать?

Ps: Тут вопросик всплыл, что за переменная %* ? Видел в чужих сценариях.

Отправлено: 16:09, 19-02-2012

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Anonymоus:
fdko.de ⇒ Bat to Exe Converter ⇒ Download ⇒ Bat_To_Exe_Converter.zip ⇒ help.chm ⇒ English ⇒ Options »
Эту часть можно указывать (при условии, что приложение установлено в умолчальную папку), например, и так:
Код: Выделить весь код
hh.exe "mk:@MSITStore:C:\Program%20Files\BatToExeConverter\Help%20[English].chm::/index.html#func"
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:49, 20-02-2012 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для sLiDeR-X

Ветеран


Автор проектов


Сообщения: 1202
Благодарности: 280

Профиль | Отправить PM | Цитировать


Я сам ищу такую программу, которая бы переделывала cmd/bat в exe, а не делала sfx-архив.
Для себя сам сделал очень просто: сделал 7zsfx, в его конфиге RunProgram="_Go.cmd %%S", а в самом батнике Set Sourse=%~1

А мне хочется, чтоб мой код никто не увидел. Выдернуть из папки %temp% любой сможет



Р.S.
За что Quick Batch file compiler берут деньги? %)

-------
Конструктор RDS_Boot_KIT и комплект Recovery DiskSuite


Отправлено: 07:44, 26-04-2012 | #12



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] При конверте .bat в .exe не работают переменные

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Доступ - [решено] Не работают некоторые команды в cmd.exe Dosmod Microsoft Windows 7 17 02-06-2015 03:01
Службы - [решено] Не работают exe файлы an426 Microsoft Windows Vista 5 20-11-2011 16:59
CMD/BAT - [решено] Bat в exe Odessa780 Скриптовые языки администрирования Windows 3 22-07-2011 16:25
CMD/BAT - [решено] Bat файлы не работают без DOS kilogen Скриптовые языки администрирования Windows 8 13-06-2011 07:07
CMD/BAT - [решено] Не работают Bat файлы. mithell Скриптовые языки администрирования Windows 8 20-05-2010 10:18




 
Переход