SetExtFunctDllName
Funkcia %SetExtFuncDllName
Funkcia
Funkcia vymení dll súbor, ktorý bude volaný pri vykonávaní externých funkcií.
Deklarácia
%SetExtFuncDllName(
TEXT in configDllName,
TEXT in newDllName,
BOOL in global
)Parametre
configDllName | Meno dll súboru, ktorý je použitý v konfigurácii objektu typu Externá funkcia (záložka Parametre - parameter Dll súbor). |
newDllName | Nové meno dll súboru pre externé funkcie. |
global | Platnosť výmeny dll súboru. Možné hodnoty:
Poznámka: Lokálna výmena má vyššiu prioritu ako globálna výmena. |
Popis
Objekt typu Externá funkcia predstavuje v systéme D2000 väzbu na algoritmus implementovaný v dll súbore (knižnica). ESL a matematický aparát má zadefinovaný spôsob, ako tieto funkcie volať (vykonávať). Každá externá funkcia má v rámci svojej konfigurácie definovaný parameter DLL súbor identifikujúci dll súbor, v rámci ktorého je funkcia implementovaná. DLL súbor zvyčajne implementuje viacej algoritmov, a preto je v systéme D2000 vytvorená množina externých funkcií, ktoré zdieľajú jeden dll súbor.
V určitých prípadoch (napr. odskúšanie novej verzie dll) je potrebné, aby ESL skript v rámci vykonávania externých funkcií (bez potreby zásahu do konfigurácie objektov typu Externá funkcia) používal dočasne iný dll súbor ako je definovaný v konfigurácii. Funkcia %SetExtFuncDllName umožňuje jedným volaním zmeniť meno dll súboru pre všetky externé funkcie implementované v rámci jedného dll súboru (knižnice).
Funkcia tiež umožňuje zrušiť zmenu konkrétneho dll súboru alebo všetkých dll súborov.
Príklad 1
Volanie funkcie:
%SetExtFuncDllName("original.dll", "test.dll", @FALSE)
spôsobí, že nasledujúce volania objektov typu Externá funkcia, ktoré majú vo svojej konfigurácií definovaný dll súbor original.dll budú namiesto tohto dll súboru používať dll súbor test.dll. Zmena je platná len v rámci aktuálneho skriptu.
Nasledovné volanie zruší výmenu dll súboru
%SetExtFuncDllName("original.dll", "", @FALSE) Príklad 2
Volanie funkcie:
%SetExtFuncDllName("original.dll", "testGlobal.dll", @TRUE)
spôsobí, že nasledujúce volania objektov typu Externá funkcia, ktoré majú vo svojej konfigurácií definovaný dll súbor original.dll budú namiesto tohto dll súboru používať dll súbor testGlobal.dll. Zmena je platná v rámci celého procesu (D2000 HI alebo D2000 Event Handler).
Nasledovné volanie zruší výmenu dll súboru
%SetExtFuncDllName("original.dll", "", @TRUE) Príklad 3
Volanie funkcie:
%SetExtFuncDllName("", "testGlobal.dll", @FALSE)
zruší všetky presmerovania pre všetky externé funkcie, ktoré boli definované volaním funkcie s parametrom global=@FALSE v rámci aktuálneho skriptu.
A potom volanie funkcie:
%SetExtFuncDllName("", "", @TRUE)
zruší všetky presmerovania pre všetky externé funkcie , ktoré boli definované volaním funkcie s parametrom global=@TRUE v rámci celého procesu (D2000 HI alebo D2000 Event Handler).
Súvisiace stránky: