-
regist, спасибо за поправку. Я как раз и подразумевал, что Major / Minor также должен браться не из реестра,
а через функцию GetVersion или GetVersionEx. При этом в манифесте приложения нужно обязательно прописать совместимость с Windows 8/8.1/(10), иначе 8.1. определится как 8.0).
А название определяется именно по этим параметрам. Более родного способа нет.
-
Будь в курсе!
Будь в курсе!
Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:
-
Только у этого способа есть один минус, если выйдет новая версия ОС (а майкрософт последнее время с этим зачастила) то пока не выйдет новая версия AVZ будет написано unknown версия. А учитывая частоту выхода новых версий AVZ это не очень радует. Правда зато не будет недоразумений со всякими сборками и просто любителями поправить в реестре название ОС.
-
-
Опять косяк с экранированием кавычек.
Код HTML:
<ITEM PID="4860" File="c:\program files (x86)\nti\acer backup manager\backupmanagertray.exe" CheckResult="0" Descr="Acer Backup Manager" LegalCopyright="Copyright (C) 2010, NTI Corporation. All rights reserved." Hidden="0" CmdLine=""C:\Program Files (x86)\NTI\Acer Backup Manager\BackupManagerTray.exe" -h -k" Size="297280" Attr="rsAh" CreateDate="09.03.2011 18:10:04" ChangeDate="09.03.2011 18:10:04" MD5="EC124B84101FEC0A7D6745ED5DD91AD6" Vendor="NTI Corporation" Product="Acer Backup Manager" Ver="3.0.0.90" IsPE="1" />
-
-
На Windows 8 / 8.1 всегда пишет, что:
">> Таймаут завершения служб находится за пределами допустимых значений"
-
Сообщение от
Dragokas
Можно - и придется постоянно править потом ... как вариант, можно такой код вытащить в обновляемую базу, и по мере появления новых комбинаций версий/подверсий обновлять базу
Добавлено через 25 секунд
Сообщение от
regist
Опять косяк с экранированием кавычек.
Код HTML:
<ITEM PID="4860" File="c:\program files (x86)\nti\acer backup manager\backupmanagertray.exe" CheckResult="0" Descr="Acer Backup Manager" LegalCopyright="Copyright (C) 2010, NTI Corporation. All rights reserved." Hidden="0" CmdLine=""C:\Program Files (x86)\NTI\Acer Backup Manager\BackupManagerTray.exe" -h -k" Size="297280" Attr="rsAh" CreateDate="09.03.2011 18:10:04" ChangeDate="09.03.2011 18:10:04" MD5="EC124B84101FEC0A7D6745ED5DD91AD6" Vendor="NTI Corporation" Product="Acer Backup Manager" Ver="3.0.0.90" IsPE="1" />
В полиморфе или в публичной версии ?
Добавлено через 27 минут
Сообщение от
Dragokas
На Windows 8 / 8.1 всегда пишет, что:
">> Таймаут завершения служб находится за пределами допустимых значений"
А что там в ключике HKLM\SYSTEM\CurrentControlSet\Control, параметр 'WaitToKillServiceTimeout' ? Я посмотрел на тестовой системе, там параметр 5000, что в принципе мало конечно ...
Последний раз редактировалось Зайцев Олег; 20.03.2015 в 21:56.
Причина: Добавлено
-
-
Сообщение от
Зайцев Олег
В полиморфе или в публичной версии ?
в публичной.
Сообщение от
regist
это кликабельно и там архив с логами.
-
-
Сообщение от
Зайцев Олег
Можно - и придется постоянно править потом ... как вариант, можно такой код вытащить в обновляемую базу, и по мере появления новых комбинаций версий/подверсий обновлять базу
Как вариант, если выйдет новая версия, то вместо Windows Unknown перейти к "старой" ветви кода (прочесть эти данные из реестра).
Сообщение от
Зайцев Олег
А что там в ключике HKLM\SYSTEM\CurrentControlSet\Control, параметр 'WaitToKillServiceTimeout' ? Я посмотрел на тестовой системе, там параметр 5000, что в принципе мало конечно ...
Мало, согласен. Но не изменяет того факта, что для них это дефолт.
Win 8 x32 - 5000
Win 8.1 x64 - 5000
Win 10 Tech Preview x32 (10.0.9926) - 5000
-
Зайцев Олег, уже несколько раз при попытке заархивировать карантин AVZ через просмотр карантина (GUI) наблюдал такую ошибку
НА выходе вместо архива virus.zip получаем virus.Z01
Если протестировать его на ошибки, то требует следующий том.
При нажатие Ок и повторной попытке заархивировать, архивируется уже нормально.
-
-
Junior Member
- Вес репутации
- 34
Зайцев Олег, Здравствуйте Олег! Не выполняется ни один скрипт в AVZ (пробовал как любой стандартный, так и произвольный с удалением одного файла), каждый раз ошибка "Неверный блок на устройстве \\device\harddisk5\DR5", к компьютеру подключен картридер, думаю дело в нем. Возможно ли это исправить?
Прикладываю скриншот, на нем видно что картридер в AVZ определяется, в мой компьютер тоже виден и в диспетчере устройств виден. Кстати, если на ошибке нажимать Отмена Повторить или Продолжить то ошибка появляется снова.AVZ!.jpg
-
Сообщение от
regist
thyrex, уже несколько раз замечал, что для того чтобы AVZ перескочил к нужной ветке реестра надо сделать несколько попыток.
Зайцев Олег, хочу предложить Вам сделать этот алгоритм более надежным и быстрым.
Редактор реестра умеет сам открывать в нужном (ранее сохраненной позиции) разделе.
Так что:
1) Проверка - если есть процесс regedit.exe -> убиваем.
2) Узнаем язык отображения диалоговых окон:
Код:
lcode = oShell.RegRead ("HKCU\Software\Microsoft\Windows\CurrentVersion\Controls Folder\Presentation LCID")
и язык установки ОС:
Код:
lcode = oShell.RegRead ("HKLM\SYSTEM\CurrentControlSet\Control\Nls\Language\InstallLanguage")
3) Определяем нужный префикс по такой логике:
Код:
lcode = GetInterfaceLangCode()
if lcode <> 0 then
if lcode = 1033 then CompPrefix = "Computer\" else CompPrefix = "Компьютер\"
else
if GetOSInstallLangCode() = "0409" then CompPrefix = "Computer\" else CompPrefix = "Компьютер\"
end if
4) Префикс вместе с полным именем куста и путем ключа, где нужно открыть редактор реестра подставляем сюда:
Код:
rData = "HKEY_CURRENT_USER\Environment" '<----- какой-нибудь ключ (только ключ, не параметр !!!)
oShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit\Lastkey",CompPrefix & rData,"REG_SZ"
5) Запускаем regedit
6) Дальше Ваша часть кода, с помощью которой Вы подсвечиваете сам параметр.
С уважением.
- - - - -Добавлено - - - - -
Подумал, наверное, слишком сложно написал.
HKCU\Software\Microsoft\Windows\CurrentVersion\App lets\Regedit => Lastkey
здесь хранится инфа о последнем разделе, в который заходили, с момента закрытия редактора реестра, например:
значение = Компьютер\HKEY_CURRENT_USER\Environment
Чтобы узнать как называется префикс, достаточно прочитать его из этого же параметра Lastkey и распарсить до знака \.
-
Сообщение от
chinaski
Не выполняется ни один скрипт в AVZ (пробовал как любой стандартный, так и произвольный с удалением одного файла), каждый раз ошибка "Неверный блок на устройстве \\device\harddisk5\DR5", к компьютеру подключен картридер, думаю дело в нем. Возможно ли это исправить?
тоже пару раз сталкивался с подобной ошибкой. Тогда это устройство в окне "Мой компьютер" не отображалось. В идеале вообще исправить эту ошибку (так как в таких случаях в логе TDDSKiller-а устройства с таким с таким порядковым номером нету и кроме AVZ его никто не видит). Или хотя бы починить работу кнопки пропустить, или чтобы после нескольких попыток AVZ сам пропускал это недоступное устройство.
Сообщение от
Dragokas
Зайцев Олег, хочу предложить Вам сделать этот алгоритм более надежным и быстрым.
Редактор реестра умеет сам открывать в нужном (ранее сохраненной позиции) разделе.
было бы не плохо, если бы это поправили, а то в текущем варианте происходит имитация нажатия клавиш клавиатуре, в итоге часто открывает только после нескольких попыток. Даже видео в этой теме выкладывал.
-
-
http://z-oleg.com/secur/avz/upload_qr.php
Максимальный размер загружаемого карантина - 20 Мб, файлы большего размера игнорируются.
я так понимаю информация устарела?
Ошибка: Файл не является карантином AVZ !
Возможные причины:
файл не является карантином, созданным утилитой AVZ;
файл превышает по объему 80 мб;
в ходе передачи файла возникли сбои
Правда я грузил карантин размером всего 2,8 MB, так что причина была не в размере.
-
-
Зайцев Олег, а можно добавить в AVZ команду IsAdmin - для проверки запущен ли AVZ с правами администратора.
-
-
ошибка в AVZ - ошибка "Invalid data type for 'Dllname'" при выполнении очистки через "Мастер поиска и исправления проблем".
-
-
Сообщение от
Vvvyg
ошибка "Invalid data type for 'Dllname'"
вот тут аналогичная ошибка была. Как я понял AVZ не нравится тип данных ключа реестра.
-
-
Сообщение от
regist
а можно добавить в AVZ команду IsAdmin - для проверки запущен ли AVZ с правами администратора.
Или просто сделать заранее инициализированной переменной, по типу IsWOW64.
-
-
Сообщение от
Vvvyg
по типу IsWOW64
я это и имел ввиду. Пишешь команду IsAdmin а она тебе возвращает true или false
-
-
Junior Member
- Вес репутации
- 33
Зайцев Олег, доброго времени суток!
Нашел ошибку в интерфейсе AVZ, сказали что об ошибках нужно сообщать сюда.
Ошибка с кнопками "Пуск" и "Прервать работу скрипта", во время работы, кнопка "Пуск" перекрывает часть другой кнопки.
-
Junior Member
- Вес репутации
- 33
Зайцев Олег, возникла ошибка после выполнения стандартного скрипта №8. (ниже скрин)
-
Сообщение от
KPOBOCICb
Зайцев Олег, возникла ошибка после выполнения стандартного скрипта №8. (ниже скрин)
дополню, что ключевым моментом здесь наверняка является архивация в ZIP архив (после окончания карантина файлов). На несколько постов выше писал об этой ошибке. В смысле если даже не запускать скрипт сбора карантина, а допустим собрать карантин на одной машине, а архивировать на другой на другой, то всё равно можно получить эту ошибку.
Возможно размер архива имеет значение? У меня по крайней мере это на больших архивах для пополнения базы происходило.
KPOBOCICb, у вас размер итогового архива сколько был?
-