В модуле delphi у меня есть глобальная запись под названием «Context»:
interface
type
TContext = record
...
end;
var
context: TContext;
У меня также есть процедура инициализации в этом модуле, принимая контекст:
interface
procedure Init(AContext: TContext);
Внутри процедуры Init я пытаюсь назначить данный контекст глобальному контексту:
implementation
procedure Init(AContext: TContext);
begin
context := AContext;
end;
По какой-то причине глобальный контекст остается пустым после назначения.Это почему?Объявление локальной процедуры внутри процедуры и присвоение ей работает, как и ожидалось.
То, что я должен был упомянуть, это то, что этот модуль живет в dll, а процедура init вызывается из exe.Объявление глобальной записи или объявление нескольких глобальных строк не имеет значения.Присвоенные значения теряются.
привет,
-Vegar