Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];

Вниз

Ошибка при вызове DLL   Найти похожие ветки 

 
stone   (2002-11-05 15:18) [0]

При вызове DLL возникает ошибка:
---------------------------
Debugger Exception Notification
---------------------------
Project fcpclnt.exe raised exception class EOleSysError with message "CoInitialize has not been called". Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
может кто сталкивался с подобным?


 
linage   (2002-11-05 16:03) [1]

ты DLL динамически вызываешь?


 
Alex4444444444   (2002-11-05 16:05) [2]

Mozhet, nado CoInitialize vyzvat"?


 
stone   (2002-11-05 16:07) [3]

linage

Да динамически


 
stone   (2002-11-05 16:11) [4]

мало того, при выполнении

finally
FreeLibrary(LibHandle);
end;

выдает

---------------------------
Information
---------------------------
Project D:\Project\MIDAS\fcpclnt\bin\fcpclnt.exe raised too many consecutive exceptions: "access violation at 0x00000000: read of address 0x00000000". Process Stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------


 
linage   (2002-11-05 16:16) [5]

Ну этот ощначает, что она не создала дескриптор на твою библиотеку!
А можешь привести код, как ты ее подгружаешь?


 
stone   (2002-11-05 16:18) [6]

type
TShowOptions = function:Boolean; stdcall;
...

implementation

procedure TfrmMainForm.mmiOptionsClick(Sender: TObject);
var
LibHandle : THandle;
ShowOptions : TShowOptions;
begin
LibHandle := LoadLibrary("options.dll");
try
if LibHandle = 0 then
raise Exception.Create("Unable to load DLL");
@ShowOptions := GetProcAddress(LibHandle, "ShowOptions");
if not (@ShowOptions = nil) then
if ShowOptions then
ShowMessage("Text of message");
finally
FreeLibrary(LibHandle);
end;
end;


 
linage   (2002-11-05 16:24) [7]

А на каком шаге вылетает exception?


 
stone   (2002-11-05 16:34) [8]

if not (@ShowOptions = nil) then
if ShowOptions then <- "CoInitialize has not been called"
ShowMessage("Text of message");
finally
FreeLibrary(LibHandle); <- too many consecutive exceptions
end;


 
aus   (2002-11-05 16:53) [9]

uses ActiveX;
....................
initialization
CoInitialize;
finalization
CoUnInitialize;
end.


 
linage   (2002-11-05 16:58) [10]

Попробуй вместо функции ShowOptions, использовать процедуру ShowOptions(var b:boolean)


 
stone   (2002-11-05 16:59) [11]

aus а применительно к моей ситуации? я пробовал CoInitialize(@ShowOptions), но результат тот же.


 
stone   (2002-11-05 17:00) [12]

linage пробовал и через процедуру, как с параметрами, так и без - результат тот же


 
linage   (2002-11-05 17:10) [13]

слушай, а может exception вываливается во время работы твоей функции?


 
stone   (2002-11-06 09:21) [14]

linage эта функция просто модально отображает форму

Form1 := TForm1.create(Application);
try
Result = Form1.ShowModal = mrOk;
finally
Form1.Free;
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.008 c
14-46093
Николай Быков
2002-10-26 16:52
2002.11.14
Free programmer


7-46155
Zergling
2002-09-12 13:00
2002.11.14
POPUP меню в SYSTRAY


3-45711
vladimir_12
2002-10-24 10:17
2002.11.14
DBase запись не добавляется...


1-45902
^Sanya
2002-11-05 15:31
2002.11.14
Как в приведённом коде...


14-46080
Beginner-Designer
2002-10-24 16:00
2002.11.14
Как реализовать что-то типа if...then в Builder e?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский