當用ibx存取interbase時若interbase無啟動如何透過程式碼啟動? |
答題得分者是:P.D.
|
ry_lee
高階會員 ![]() ![]() ![]() ![]() 發表:368 回覆:251 積分:123 註冊:2002-03-19 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 當用ibx存取interbase時若interbase無啟動時要呼叫什麼delphi函數或那一個win32 api來啟動ibserver.exe,或要呼叫什麼delphi函數或那一個win32 api來啟動ibgaurd.exe服務及ibserver.exe服務.interbase是一個DatabaseEngine, 如果你在呼叫IB檔前未啟動interbase是會造成錯誤, 這就有如"雞"與"蛋"的關係, 只要你在未進入ibx的範圍內可以嘗試用winexec()來呼叫ibgaurd.exe(但先決條件你還是要把interbase介面安裝好), 但實在不敢保證會不會有後續的問題發生, 而且ibx的engine其實佔不了很大的記憶空間, 所以建議你還是安份的讓interbase先起來, 因為在win98與winxp interbase的介面一個是採AP模式, 一個是採service模式! |
renard
一般會員 ![]() ![]() 發表:3 回覆:43 積分:24 註冊:2007-06-29 發送簡訊給我 |
int i=0;
void __fastcall TForm1::Timer1Timer(TObject *Sender)//1sec { //****************************************************************************** HWND IBM=::FindWindow(NULL,"InterBase Manager"); if(IBM) { Timer1->Enabled=false; } else { i ; if(i%3==0) { AnsiString ibm="C:\\WINDOWS\\system32\\ibmgr.cpl"; ShellExecute(NULL,NULL,ibm.c_str(),NULL,NULL,SW_SHOW); } } //****************************************************************************** } //--------------------------------------------------------------------------- |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |