Господа, помогите сделать.
есть несколько модулей (init1,init2) с полностью идентичными процедурами (имя процедуры, переменные)
нужно сделать так чтоб можно было выбрать из списка алгоритм расчета (совпадает с именем модуля) и программа выполнялась только по тем процедурам что в выбранном модулe.
ниже привел схему, которая работает с DLL но не с модулями
Код:
unit algoritm1;
procedure Input(A,B,C:integer; Rez1:integer);
procedure OutPut(G:integer; Rez2:integer);
procedure Run(F:integer; Rez3:integer);
exports
Input name 'Input',
OutPut name 'OutPut',
Run name 'Run';
begin
end.
unit algoritm2;
procedure Input(A,B,C:integer; Rez1:integer);
procedure OutPut(G:integer; Rez2:integer);
procedure Run(F:integer; Rez3:integer);
exports
Input name 'Input',
OutPut name 'OutPut',
Run name 'Run';
begin
end.
unit General;
type
TG_input = procedure (A,B,C:integer; Rez1:integer);
TG_Output = procedure (G:integer; Rez2:integer);
TG_Run = procedure (F:integer; Rez3:integer);
var
input :TG_input;
Output :TG_Output;
Run :TG_Run;
implementation
procedure TForm1.ListBox1MouseDown();
var
lbox :string;
begin
lbox:=ListBox1.Items.Strings[ListBox1.ItemIndex];
@input:=getProcAddress( lbox ,'Input');
@Output:=getProcAddress( lbox ,'Output');
@Run:=getProcAddress( lbox ,'Run');
end;
end.