Просмотр полной версии : С помощью .bat файла возможно работать с реестром винды?
Некто говорит, что можно с помощью .bat файла в реестр, в автозапуск, добавить свою запись. Но дойдя разговор до того, как это можно сделать, тишина!
Может быть, светлые умы форума flasher растолкуют, что к чему и может ли .bat вообще добавить запись, разумеется, вызываясь из flash’а.
Зайдите в реестр, экспортируйте любую ветку в файл (*.reg) и посмотрите содержимое. Учтите, что файл может быть двух форматов: 4-ой версии или 5-ой (Unicode), по умолчанию.
Соответственно вам нужно написать файл в таком формате и вызвать его из батника.
Добавить запись, хоть и коряво, но получилось, а как удалить теперь её))
Можно конечно тупо путь удалить типа этого:
"MyProject"="---"
А как быть, если программка установлена в одно место, а в реге уже изначально прописан другой путь, косяяяк. Можно конечно попытать путем инсталлятора переписывать рег файл с учет того в какое место устанавливается прога, но с этим еще предстоит попариться.
И еще бесит появляющееся сообщение с разрешением добавить запись в реестр
А зачем вам вообще запись в реестр? Флеш все равно с ним не работает.
Флеш не работает, ну так к этому делу можно Зинк подключить. Чувствую, придется на СИ писать простенькую программку, которая и будет выполнять эту задачу, раз уж столько нюансов преподносит батник.
Запись в реестр необходима для автозапуска программы. В свою очередь Автозапуск этой программки не обходим также как и запись в реестр сего)).
Надеюсь всё понятно))
И зинк и без батника умеет работать с реестром.
Блииин мне надоела эта дезинформация. Меня уверили, что зинк только может запускать другие проги. А как зинком можно добавить запись.
Подскажите, это было бы просто замечательно!
Решил свою задачу, написав все ж таки на СИ примочку для автозапуска. Приводить пример кода не буду, так как специфика кода иная, но если кому-то, так же, как и мне нечего делать и кто-то хочет решить такую же проблему, тогда выложу).
И все ж таки про автозапуск с помощью зинка было бы интересно прочитать.
И вообще про зинк хотелось бы узнать побольше, может у кого-нибудь есть литература по работе с зинком, какие-нибудь примерчики???
http://www.multidmedia.com/support/livedocs/
System.(Object).Registry
alexcon314
26.09.2008, 14:16
Ну, а еще есть штатная виндовая консольная утилита REG.
Для работы с реестром из батника самое то. Чего огорд городить-то?
Запускаете cmd и пишете
reg /?
По поводу зинка:
Как я уже говорил, деревянный вариант без возможности поменять путь до программы это не есть хорошо.
Дальше лучше, какой-то демонический косяк в значении не записываются первые буквы)
Нельзя указать параметр.
По поводу .bat
Делаю таким образом:
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /V "MyProject" /D "MyProject.exe" /f
И тишина, запись не добавляется.
Мой вариант остается значительно надежней и лучше. СИ есть СИ, все остальное просто недоразумение.
Для работы с реестром из батника самое то. Чего огорд городить-то?
Абсолютно согласен!
Поэтому и пытался найти более простой выход, но с батником что-то ну, ни как не выходит наладить хорошие отношения!)
По поводу зинка:
Как я уже говорил, деревянный вариант без возможности поменять путь до программы это не есть хорошо.Не понял.
По поводу .bat
Делаю таким образом:
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /V "MyProject" /D "MyProject.exe" /f
И тишина, запись не добавляется.
У меня добавилось.
alexcon314
26.09.2008, 17:52
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /V "MyProject" /D "MyProject.exe" /f
У меня работает на ура. Mожет у вас антивирус какой лочит попытку доступа к реестру, типа касперского?
У меня добавилось.
У меня работает на ура.
Вы издеваетесь))
Касперского отключил.
Та же х…
Не понял
Что не понятного, приходится опять прописывать полный путь к файлу:
mdm.System.Registry.createKey(3, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", "С:\Program Files\ MyProject \ MyProject.exe");
как я понимаю иначе никак или я чего-то не понимаю))
поробуй отключить самозащиту касперыча + перименнуй установочную папку, к примеру _ добавь и пропробуй еще раз
Ууупс, извиняюсь, действительно запись добавляется!
Я умудрился не в том разделе ждать свою запись!)
Жму как обезьяна на F5, а ничего не появляется) терь все ОК
Теперь и не знаю или вам спасибо сказать, или себе по голове постучать)
Что не понятного, приходится опять прописывать полный путь к файлу:
mdm.System.Registry.createKey(3, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", "С:\Program Files\ MyProject \ MyProject.exe");
как я понимаю иначе никак или я чего-то не понимаю))
Надо так писать
mdm.System.Registry.createKey(3, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", mdm.Application.path + "MyProject.exe");
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.