[轉貼]透過OLE Automation控制Internet Explorer Applicalion的範例

有關於C/C++的語法, 程式等
回覆文章
頭像
tim
文章: 1356
註冊時間: 2008年 11月 26日, 00:49

[轉貼]透過OLE Automation控制Internet Explorer Applicalion的範例

文章 tim »

轉貼資料, 資料來源:
http://delphi.ktop.com.tw/topic.asp?TOPIC_ID=29759


透過OLE Automation控制Internet Explorer Applicalion的範例



語法:


寫法一.

void __fastcall Tform1::Button1Click(TObject *Sender)
{
Variant IEbrowser;
HWND hWnd;
if( VarIsEmpty( IEbrowser ) )
{
IEbrowser = CreateOleObject("InternetExplorer.Application");
}
if(!(hWnd = FindWindow( "IEFrame", NULL )))
{
IEbrowser = CreateOleObject( "InternetExplorer.Application" );
hWnd = FindWindow( "IEFrame", NULL );
}
if(hWnd)
{
IEbrowser.OlePropertySet("Visible",true);
::SetForegroundWindow( hWnd );
IEbrowser.OleProcedure("Navigate","網址");
}
}



寫法二.

void __fastcall Tform1::Button1Click(TObject *Sender)
{
Variant IEbrowser = Variant::CreateObject("InternetExplorer.Application");
IEbrowser.OlePropertySet("Width","800");
IEbrowser.OlePropertySet("Height","600");
IEbrowser.OlePropertySet("Visible","true");
IEbrowser.OleProcedure("Navigate","<a href=http://delphi.ktop.com.tw"); target=_blank>http://delphi.ktop.com.tw");</a>

IEbrowser = Unassigned; //OLE Release
}



如果啟動Internet Explorer時指定為首頁設定可下達:

IEbrowser.OleFunction("GoHome");



如果URL不指定網址可設為

IEbrowser.OleProcedure("Navigate","aboutblank");



隱藏AddressBar:

IEbrowser.OlePropertySet("AddressBar",false);



顯示AddressBar:

IEbrowser.OlePropertySet("AddressBar",True);



指定為瀏覽上一頁可下達:

IEbrowser.OleFunction("GoBack");



指定為瀏覽下一頁可下達:

IEbrowser.OleFunction("GoForward");



指定為MSN蒐尋引擎功能可下達:

IEbrowser.OleFunction("GoSearch");



指定Internet Expolorer為全螢幕方式顯示:

IEbrowser.OlePropertySet("FullScreen","true");



取得internet Explorer檔案路徑:

Edit1->Text=IEbrowser.OlePropertyGet("FullName");
取得結果為:C:Program FilesInternet ExplorerIEXPLORE.EXE


判斷Internet Explorer是否為busy

如果Busy命令傳回值等於-1,表示Internet Explorer 忙碌,中如果Busy命令傳回值等於1,表示Internet Explorer 不忙碌

相關資訊可參考
http://msdn.microsoft.com/library/defau ... plorer.asp
多多留言, 整理文章, 把經驗累積下來.....
回覆文章