Выполнение процедуры по адресу
Falk0ner, вс, 06/07/2008 - 15:34.
var F: procedure(x, y: double);
@F := GetProcAddress(hDLL, 'SOMEPROC');
F(3, 4);
@F := GetProcAddress(hDLL, 'SOMEPROC');
F(3, 4);
Ключом здесь является использование оператора @, располагаемого с левой части процедурной переменной. Он говорит компилятору: "Не волнуйтесь здесь о совместимости типов, просто присвойте полученный в правой части выражения адрес переменной в левой части выражения (и процедурные переменные являются переменными-указателями).
- Peter Below
Взято из Советов по Delphi от Валентина Озерова
Сборник Kuliba
Отправить комментарий