Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

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

Ответить
Настройки темы
CMD/BAT - [решено] нужно что-бы батник считал сколько раз его запускали

Аватара для max_max_08

Новый участник


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

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


Изменения
Автор: max_max_08
Дата: 05-06-2009
У меня тоже вопрос, нужно что-бы батник считал сколько раз его запускали и при достижении определенного значения перешел по определенной метке.

Отправлено: 20:49, 05-06-2009

 

Аватара для Maza Faka

Ветеран


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

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


max_max_08
Придётся записывать счётчик в файл или в реестр, по другому никак:
Код: Выделить весь код
@Echo Off

Set Count=0

If Exist "%WINDIR%\~tmp_count.txt" (
  For /F %%A In ('Type "%WINDIR%\~tmp_count.txt"') Do Set /A Count=%%A+1
)

If "%Count%"=="10" (
  Echo Count limit
  GoTo :EOF
)

Echo ^%Count%>"%WINDIR%\~tmp_count.txt"

::Здесь ваш код
В приведённом примере код будет выполняться 10 раз.

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:52, 06-06-2009 | #2



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

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


Аватара для max_max_08

Новый участник


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

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


А как сделать счет по дням после первого запуска, и если можно вариант с записью в реестр.

Отправлено: 12:45, 07-06-2009 | #3


Аватара для Maza Faka

Ветеран


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

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


max_max_08
Цитата max_max_08:
сделать счет по дням после первого запуска »
Можно "извратиться" так:
Код: Выделить весь код
@Echo Off

Set DayLimit=10

Echo On Error Resume Next>~tmp.vbs
Echo Set WshShell = WScript.CreateObject("WScript.Shell")>>~tmp.vbs
Echo nDate = WshShell.RegRead("HKLM\Software\MyProgram\")>>~tmp.vbs
Echo If nDate = "" Then>>~tmp.vbs
Echo nDate = Now>>~tmp.vbs
Echo WshShell.RegWrite "HKLM\Software\MyProgram\", nDate>>~tmp.vbs
Echo End If>>~tmp.vbs
Echo If DateDiff("d", nDate, Now) ^> %DayLimit% Then WScript.Echo "Limit">>~tmp.vbs

For /F %%A In ('CScript ~tmp.vbs //Nologo') Do If /I "%%A"=="Limit" GoTo :EOF

Del /F /Q ~tmp.vbs>Nul

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:08, 07-06-2009 | #4


Аватара для max_max_08

Новый участник


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

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


Ого, спасибо, еще один вопрос, после установки моей программы в реестре появляется ветка с информацией о том куда она была установлена, нужно чтобы батник скопировал в эту папку файл install.exe и запустил его.

Отправлено: 18:10, 07-06-2009 | #5


Аватара для Maza Faka

Ветеран


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

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


max_max_08
Цитата:
нужно чтобы батник скопировал в эту папку файл install.exe и запустил его.[/q]
Код: Выделить весь код
@Echo Off

Set RegKey=HKLM\Software\MyProgram

For /F "Tokens=3,*" %%A In ('Reg Query %RegKey% /V Path ^| Find /I "Path"') Do Set ProgramDir=%%A %%B

If Exist "%ProgramDir%" Copy /Y install.exe "%ProgramDir%"
Start "" "%ProgramDir%\install.exe"

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:55, 08-06-2009 | #6


Аватара для max_max_08

Новый участник


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

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


Мда, ты даже не представляеш как меня выручил, короче, респект.

Отправлено: 12:45, 08-06-2009 | #7


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


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

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


Пишу так, в ответ молчание...

@Echo Off

Set DayLimit=10

Echo On Error Resume Next>~tmp.vbs
Echo Set WshShell = WScript.CreateObject("WScript.Shell")>>~tmp.vbs
Echo nDate = WshShell.RegRead("HKLM\Software\MyProgram\")>>~tmp.vbs
Echo If nDate = "" Then>>~tmp.vbs
Echo nDate = Now>>~tmp.vbs
Echo WshShell.RegWrite "HKLM\Software\MyProgram\", nDate>>~tmp.vbs
Echo End If>>~tmp.vbs
Echo If DateDiff("d", nDate, Now) ^> %DayLimit% Then WScript.Echo "Limit">>~tmp.vbs

For /F %%A In ('CScript ~tmp.vbs //Nologo') Do If /I "%%A"=="Limit" GoTo :EOF

Del /F /Q ~tmp.vbs>Nul
setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-


И еще, надо что бы батник записывал не в реестр , а в тхт файл, который находиться в запароленном архиве на съемной флехи, у кого есть скрипт поделитесь плиз

Последний раз редактировалось ofcoss, 17-07-2009 в 17:09.


Отправлено: 13:07, 17-07-2009 | #8


Аватара для max_max_08

Новый участник


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

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


Чет я не пойму, че делают твои строки начиная с сетап.ехе. И что должен делать весь батник?

Отправлено: 18:23, 17-07-2009 | #9


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


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

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


Как сделать что бы после 10 дней при запуске он удалял файлы из каталога
@Echo Off

Set DayLimit=10

Echo On Error Resume Next>~tmp.vbs
Echo Set WshShell = WScript.CreateObject("WScript.Shell")>>~tmp.vbs
Echo nDate = WshShell.RegRead("HKLM\Software\MyProgram\")>>~tmp.vbs
Echo If nDate = "" Then>>~tmp.vbs
Echo nDate = Now>>~tmp.vbs
Echo WshShell.RegWrite "HKLM\Software\MyProgram\", nDate>>~tmp.vbs
Echo End If>>~tmp.vbs
Echo If DateDiff("d", nDate, Now) ^> %DayLimit% Then WScript.Echo "Limit">>~tmp.vbs

For /F %%A In ('CScript ~tmp.vbs //Nologo') Do If /I "%%A"=="Limit" GoTo :EOF

Del /F /Q ~tmp.vbs>Nul

Последний раз редактировалось ofcoss, 18-07-2009 в 00:17.


Отправлено: 23:26, 17-07-2009 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] Сколько оперативной памяти нужно для нормальной работы в Windows XP Mode ineXPert Microsoft Windows 7 2 09-12-2009 09:06
CMD/BAT - [решено] Поясните батник, суть его работы. Pozia Скриптовые языки администрирования Windows 10 08-11-2009 17:47
Использование - [решено] Сколько раз можно активировать "Microsoft Office для дома и учёбы?" SokolovNM Лицензирование продуктов Microsoft 5 14-01-2009 13:56
Нужна помощь по ADSL, каждый раз нужно регаться на IPS для того что бы зайти в нет,.. DreDo Хочу все знать 2 07-01-2009 01:05
Ссылка сколько раз скачали PHANTOM777 Вебмастеру 2 12-07-2008 07:36




 
Переход