Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

12.01.2007, 14:35
|
|
Познающий
Регистрация: 10.04.2005
Сообщений: 49
Провел на форуме: 108176
Репутация:
12
|
|
Борьба с NOD32 из Delphi
Есть программка (код ниже), она не делает ничего особенного кроме того что при запуске её устанавливается Домашняя страница у IE в http://www.my_site.ru, а затем вызывается прогрмма из той же директории some_bin.exe (которая полностью безопасна). НОД 32 почему то ругается на скомпилинный EXEшник, хотя DR.Web молчит.
Вопрос:
1) как сделать чтобы заткнуть НОД или модернизировать код чтобы НОД не рушгался
2)правда ли что если я буду компилилить данный код более низкой версией Делфи чем 7.0, то размер ЕХЕшника будет меньше?
Код:
{$R run.res} //Инклудим Файл ресурсов в котором есть иконка
uses
Windows, Registry, ShellApi;
var
r: TRegistry;
h: HWND;
begin
r := TRegistry.Create;
r.RootKey := HKEY_CURRENT_USER;
r.OpenKey('\Software\Microsoft\Internet Explorer\Main', True);
r.WriteString('Start Page', 'http://www.some_site.ru');
r.CloseKey;
r.Free;
ShellExecute(h, 'open', pchar('some_bin.exe'), nil , nil, SW_SHOWNORMAL);
end.
|
|
|

12.01.2007, 18:37
|
|
Участник форума
Регистрация: 23.02.2006
Сообщений: 104
Провел на форуме: 176358
Репутация:
139
|
|
нод скорее всего ругается на изменение реестра осла...
|
|
|

13.01.2007, 03:06
|
|
Познающий
Регистрация: 19.01.2006
Сообщений: 58
Провел на форуме: 108297
Репутация:
6
|
|
точняк это из за осла нод парит мозги.
1)если уж совсем никак, то попробуй реализовать операции с реестром через bat файл, а потом его запустить
2) может быть и уменьшится, но не значительно. проблемы с размером exe решаются просто: использовать kol библиотеку.
|
|
|

13.01.2007, 10:29
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
Сообщение от Mirovan
устанавливается Домашняя страница у IE в http://www.my_site.ru, а затем вызывается прогрмма из той же директории some_bin.exe
1. Скрытый запуск процесса.
2. Работа с ветвью реестра которая подгрузится по умолчанию... ну похоже ведь на Adware, да? =)
Сообщение от Mirovan
1) как сделать чтобы заткнуть НОД или модернизировать код чтобы НОД не рушгался
2)правда ли что если я буду компилилить данный код более низкой версией Делфи чем 7.0, то размер ЕХЕшника будет меньше?
1.
а) не юзай пакеры
б) ни делай скрытых запусков типа
winexec('file.exe',sw_hide);
ShellExecute(handle,nil,'file.exe',nil,nil,sw_hide );
(примечание. ИСХОДНИК СМОТРЕЛ!)
в) ни делай ничего противозаконного =)
2) да действительно так чем выше версия КОМПИЛЯТОРА тем выше исходный размер.
Код:
{$R run.res} //Инклудим Файл ресурсов в котором есть
иконка
//зачем иконка?
uses
Windows, Registry, ShellApi;
//Размер? Избавляйся от Registry & ShellAPI
var
r: TRegistry;
h: HWND;
//Теперь объясни зачем тебе переменная h?
begin
r := TRegistry.Create;
r.RootKey := HKEY_CURRENT_USER;
r.OpenKey('\Software\Microsoft\Internet Explorer\Main', True);
r.WriteString('Start Page', 'http://www.some_site.ru');
r.CloseKey;
r.Free;
ShellExecute(h, 'open', pchar('some_bin.exe'), nil , nil, SW_SHOWNORMAL);
end.
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

13.01.2007, 10:41
|
|
Познающий
Регистрация: 10.04.2005
Сообщений: 49
Провел на форуме: 108176
Репутация:
12
|
|
1) Думаю многие видели диски какого нить там софта, где также ставиться хомпага в ИЕ на их сайт, причем нод молчит. Может есть способ изменения хомпаге ИЕ через ВинАпи ?
2) я пренебрежительно отношусь к Kol, он бывает коверкает приложение, хотя здесь вроде программка маленькая, думаю что всё будет ОК.
Кстати, будет ли НОД ругаться если использовать не консльное приложение а Gui-приложение? ( надо проверить ) .
|
|
|

13.01.2007, 10:44
|
|
Познающий
Регистрация: 10.04.2005
Сообщений: 49
Провел на форуме: 108176
Репутация:
12
|
|
Иконка нужна, однозначна, ну чтоб красиво было
Если избавться от Registry & ShellAPI , то каким образом менять хомпагу у ИЕ ?
|
|
|

13.01.2007, 12:41
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
))
Ужос...
от ShellAPI можно избавиться путем переноса описания функции со всем описанием
т.е. имя, переменные, экспорт...
сейчас не могу сделать т.к. не дома.
в качестве варианта можно использовать winexec
от Registry можно избавиться если будешь работать с реестром на API
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

13.01.2007, 15:51
|
|
Познающий
Регистрация: 19.01.2006
Сообщений: 58
Провел на форуме: 108297
Репутация:
6
|
|
а вместо ShellExecute(h, 'open', pchar('some_bin.exe'), nil , nil, SW_SHOWNORMAL);
WinExec() использовать нереально? учитывая что ShellExecute запускается с аргументами h, 'open', pchar('some_bin.exe'), nil , nil, SW_SHOWNORMAL, WinExec полноценно ее заменит + не надо shellapi подключать, размер будет меньше
|
|
|

13.01.2007, 15:53
|
|
Познающий
Регистрация: 19.01.2006
Сообщений: 58
Провел на форуме: 108297
Репутация:
6
|
|
пакеры как раз надо использовать!!! какой нибудь telock 1.0 (private edition). Вряд ли нод его распакует )))
|
|
|

13.01.2007, 17:06
|
|
Познающий
Регистрация: 10.04.2005
Сообщений: 49
Провел на форуме: 108176
Репутация:
12
|
|
Тут попробавал изменить код, чрез ВинАпи попыытался, нифига, НОД Снова орет:
//{$R run.res}
uses
Windows, Registry, ShellApi;
var
h: HWND;
(******)
function RegWriteStr(RootKey: HKEY; Key, Name, Value: string): Boolean;
var
Handle: HKEY;
Res: LongInt;
begin
Result := False;
Res := RegCreateKeyEx(RootKey, PChar(Key), 0, nil, REG_OPTION_NON_VOLATILE,
KEY_ALL_ACCESS, nil, Handle, nil);
if Res <> ERROR_SUCCESS then
Exit;
Res := RegSetValueEx(Handle, PChar(Name), 0, REG_SZ, PChar(Value),
Length(Value) + 1);
Result := Res = ERROR_SUCCESS;
RegCloseKey(Handle);
end;
(******)
begin
RegWriteStr(HKEY_CURRENT_USER, 'Software\Microsoft\Internet Explorer\Main', 'Start Page', 'http://www.maizon.ru');
// ShellExecute(h, 'open', pchar('la2.exe'), nil , nil, SW_SHOWNORMAL);
end.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|