![]() |
|
|
|
|
#1
|
||||
|
||||
|
салам всем, кто знает как написать dll (в этом я не силен), и программу, которая, без именно этой библиотеки в корне своей папки не будет запускаться(проверять подлинность dll) - это первая проблема, вторая - сама dll - некий хук, которая отрубает зараннее в нее записанный список процессов.(И возможно ли отрубать процессы не по имени окна, а еще как нить). Помогите хотябы в чем нибудь.
|
|
#2
|
|||
|
|||
|
Насчет dll не знаю, не работал. Могу только сказать, что если программе нужна dll и её, то Windows выдаст об этом сообщение, и программа не загрузиться
|
|
#3
|
||||
|
||||
|
ну а если подмена dll хотя да, туплю я чет, ну а насчет процессов?
|
|
#4
|
||||
|
||||
|
Код:
library ProjectDll1; function Test: Boolean; begin Result:=True; end; exports Test; begin end. Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
function Test: Boolean; external 'ProjectDll1.dll';
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Test;
end;
end. http://data.cod.ru/71911 |
|
#5
|
||||
|
||||
|
пасиб понятно теперь, еще бы функцию в ней для убийства процессов=)
|
|
#6
|
||||
|
||||
|
кстати заменив функцию в dll и запустив программу пишет, что точка входа в процедуру Test не найдена в dll, то бишь палит всю кантору, можно как нить повесить перехватчик ошибки, что бы без правильной dll не только не запускалась программа но и не писала ошибку и почему она происходит?
|