Ⅰ Delphi中怎樣模擬點擊webbrowser中的frame里的連接
WebBrowser1.Document.Frames(0).location = ""
WebBrowser1.Document.All.Item("form1").username1.Value = ""
WebBrowser1.Document.All.Item("itemname").Click
frame 的 NAME如果沒有的話可以用 frames(i)代替,看看I是幾就好了。。
如果鏈結是固定的,那麼可以用第一種寫法,不固定或者網頁檢測來源的話用for循環判斷
1、是否鏈結
2、鏈結中有某個關鍵字 或者 HREF中有某個關鍵字
用click
Sub gourl2(canshu1)
For i = 1 To WebBrowser1.Document.Frames(0).Document.All.length - 1
'If InStr(WebBrowser1.Document.All(i).innertext, "查詢我的房源") Then
'WebBrowser1.Document.All(i).Click
If UCase(WebBrowser1.Document.Frames(0).Document.All(i).tagName) = "A" Then
If InStr(WebBrowser1.Document.Frames(0).Document.All(i).HREF, canshu1) Then
WebBrowser1.Document.Frames(0).Document.All(i).Click
Exit Sub
End If
End If
Next i
End Sub
一級的真不想回答。。免得生閑氣
Ⅱ delphi可以做網站嗎
delphi 可以做網站。
1、delphi 里有 Web 服務控制項、FTP 控制項等,可以用來編寫搭建網站服務軟體。
2、使用 IntraWeb 等,可以編寫 Web 程序,供用戶訪問。
3、編寫 Web 服務,供用戶訪問。
Ⅲ 要用delphi做web開發,採用哪種方式比較好
Web 開發有多種應用形式,要看應用的平台(比如是電腦還是手機)。
以下提供用 delphi 開發 web 的一些方式:
一、使用 Indy 組件包里的 Internet 控制項
如果是開發網路應用(架構web伺服器等),可以使用 Indy 組件包里的 Internet 控制項。
二、使用 IntraWeb 組件
IntraWeb很像是普通的應用程序,唯一不同的是它的用戶界面是用瀏覽器代替了通常的Windows界面,當把應用程序安裝到Web伺服器上之後,用戶馬上就可以通過它的網路地址來開啟它,應用程序會馬上建立使用者的用戶信息,這樣就可以避免丟失用戶信息或者與其它的使用者發生使用混亂。
三、開發 Android / IOS 手機應用
此外,UniGUI 組件包改編 ExtJS 框架,提供了一整套的 web UI 元素。
Ⅳ delphi能否做bs結構的軟體
可以的,只是相對於一些流行的bs開發技術(java,.net,php),delphi開發bs不太主流。delphi開發bs有幾種方式,delphi自帶的有WebSnap或vcl for web(intraweb)可以開發bs,WebSnap比較難用,而且資料很少,vcl for web稍好點。此外,還有一些第三方的框架可以開發bs,比如ungui是個很有趣的東西,可以這里看它的在線demo:http://prime.fmsoft.net/demo/ucdemo.dll
Ⅳ 要用delphi做web開發,採用哪種方式比較好
delphi就是擅長CS架構的,做bs架夠太麻煩了,尺有所短,寸有所長,要發揮自己的優勢
Ⅵ delphi的發展歷史
Delphi 是Borland 公司開發的,深受廣大程序員所喜愛的可視化軟體開發工具。和Visual C++相比,Delphi 更簡單、更易於掌握,而在功能上也絲毫不遜色;和Visual Basic 相比,Delphi 則功能更強大
Delphi介紹
Delphi 是Borland 公司開發的,深受廣大程序員所喜愛的可視化軟體開發工具。和Visual C++相比,Delphi 更簡單、更易於掌握,而在功能上也絲毫不遜色;和Visual Basic 相比,Delphi 則功能更強大、更實用,學習上也不比Visual Basic 困難。可以說Delphi 同時兼備了Visual C++功能強大和Visual Basic 簡單易學的特點。
「真正的程序員用C,聰明的程序員用Delphi」,這句話就是對Delphi 最貼切的描述。下面介紹一下Delphi 的發展歷程。
從本質上看,Delphi 是一個Pascal 編譯器。自從20 年前Anders Hejlsberg 寫下第1 個Pascal 編譯器以來,Boland 公司就一直在推動著Pascal 編譯器向前發展。
Delphi 1 發布於1995 年,在那時DOS 系統下的程序員只有兩種選擇:不是用簡單但速度慢的Basic語言,就是用效率高但卻復雜的匯編語言。Pascal 以其結構化語言的簡練和真編譯器的性能,綜合了兩者的優勢。而Windows 3.1 的程序員同樣面臨兩種選擇:一種是功能強大卻難以使用的Visual C++,另一種是容易使用但語言有局限的Visual Basic。對此,Delphi 1 提供了一種完全不同於開發Windows程序的方法:可視化的開發環境、編譯後的可執行軟體、DDL、資料庫、毫無限制地給可視環境命名。
Delphi 1 作為第1 個綜合了可視化開發環境、優化的源代碼編譯器、可擴展的資料庫訪問引擎的Windows 開發工具,奠定了RAD 工具的基礎。
一年後的Delphi 2 在32 位的操作系統Windows 95 和Windows NT 下實現了原有的一切功能。另外,Delphi 2 還增加了許多Delphi 1 沒有的功能,例如32 位的編譯器能生成速度更快的應用程序,對象庫得到進一步地豐富和擴展,完善了資料庫支持,改進了字元串處理,支持OLE 和可視化窗體繼承以及與16 位的Delphi 兼容等。Delphi 2 成為衡量其他RAD 工具的標准。
在研製Delphi 3 的時候,開發組考慮到Windows 開發者可能會遇到的棘手問題,提供了一套完整的解決案。1997 年推出的Delphi 3 使本來極其復雜的COM、ActiveX、WWW 應用程序開發、「瘦」客戶應用程序、多層資料庫系統體系結構等技術變得非常容易使用。雖然Delphi 3 和Delphi 1 編寫應用程序的基本方法大都相同,但是Delphi 3 的代碼內視(Code Insight)技術卻簡化了代碼編寫的過程。
1998 年發布的Delphi 4 致力於使Delphi 更易於使用。Mole Explore 技術的引入使程序員能夠以一致的圖形界面瀏覽和編輯代碼。代碼導航和類自動生成的功能使程序員只需關注應用程序本身,而不必在輸入代碼上花費太多精力。IDE 經過重新設計可支持浮動和可停靠的工具欄和窗口,調試器也做了改進。Delphi 4 的MIDAS、DCOM 和CORBA 等技術使Delphi 4 的應用范圍擴展到企業級。
經過悉心研究,直至1999 年7 月,Boland 公司才推出功能更為強大的Delphi 5,它在下面幾個方面取得了進步。首先Delphi 5 和Delphi 4 一樣,通過增加更多的功能使程序的編寫更簡單。新功能進一步增強了IDE 和調試器的功能,提供了TeamSource 小組開發軟體和轉換工具等。其次,Delphi 5也為簡化Internet 的開發增加了許多新功能,其中包括Active Server Object Wizard(用於創建ASP)、Internet Express 組件、用於支持XML 和新的MIDAS 功能,使Delphi 成為Internet 的一個通用數據平台。最後,Delphi 5 最重要的特徵—穩定性。
Delphi 6 發布於2001 年6 月。Delphi 6 在繼承Delphi 5 特性的基礎上,又增加了當時惟一全面支持所有主要工業標准(XML、SOAP、WSDL、XSL 等)的開發工具,同時支持基於Web 服務的
Microsoft .NET 和Sun ONE 體系,提供給Web 開發者需要的可伸縮性與可靠性。Delphi 6 框架中包括了BizSnap、WebSnap 和DataSnap,用戶可以用它們開發支持Web 服務特性的伺服器端和客戶端應用
程序,這一切是通過一套高度集成的可視化開發工具、先進的編譯技術和可重用的組件完成的。
而Delphi 7 就是Borland 公司在2002 年8 月推出的新版本。
Ⅶ Delphi的用途是什麼有什麼特點
delphi是一個很好的開發工具,無論界面設計以及對多層資料庫系統的支持都沒的說,不過缺點是對web的支持不太好(我是指網頁網站設計,不是說socket)。不過做過幾年開發的軟體工程師都知道,在整個語軟體開發過程中語言只是個實現方式,更重要的是對整個軟體架構的設計(我說的這個架構包含范圍較廣,比如說資料庫設計等等)。
具體談到該學那種語言,這就要看實際情況了,如果你想向B/S方向發展,建議學java或.net或者PHP,如果想向和底層聯系較多的方向發展,建議學習C++。如果是做mis,erp,oa等(包括一些分布式系統)delphi絕對是首選。而且delphi對系統編程的支持也不錯。
常常聽一些老一點的軟體工程師這樣說(軟體工齡在10年以上,或十年前做軟體現在不做,呵呵,有點啰嗦),delphi是吉普車,什麼地方都能跑,什麼地方都跑不好,其實這是歷史原因,96,97年的D2和D3被全世界程序員瘋狂的推崇,但是D4卻出現了很多Bug,導致了delphi市場的下降(包括中國市場),也就是這個原因使得當時的一些程序員覺得delphi已經不好用 了。但是到了d6,D7的出現delphi技術已趨成熟,現在的delphi根本不存在他們口中所說的那些bug。
Ⅷ delphi開發webservice IIS 配置不成功 wsdl在哪裡生成
下面說明如何編寫用於IIS發布的ISAPI類型的WebService。
1、 New|Other|WebServices|SOAP Server Application|這里先選擇建立Web App Debugger
類型的WebService,因為這種類型的WebService便於調試,當我們調試好它,准備發布時再將
此類型轉換為ISAPI類型。
2、 選擇Web App Debugger後,隨便輸入一個ClassName,這里我們輸入「Test」
3、 隨後Delphi會詢問你是否建立介面單元,選擇是,然後輸入介面的名字,我們輸入Main,
Delphi將自動建立介面單元(名字為你輸入的介面名+Intf結束,即MainIntf)和實現介面的單
元(名字為你輸入的介面名+Impl,即MainImpl)。到此一個空的WebService已建立好。
4、 接下來我們將編寫供別人調用的WebService函數。在此我們編寫一個簡單的例子。打開介面單元
(MainIntf),在Type後,介面聲明後添加介面函數
「function GetMsg(AMsg: string): String; stdcall;」,函數後面必須加上「stdcall」。
5、介面函數的聲明已經完成,下面就是要實現這個函數了。打開介面實現單元(MainImpl),
在public中寫上該函數的聲明,在implement後寫該函數的實現。
6、到此,WebService已經撰寫完畢。接下來是調試。在我們新建的時候,Delphi已經為我們
建立了一個Unit1和其窗體,在Unit1中引用介面單元(MainImpl),然後在窗體中加一個
按鈕,在按鈕的單擊事件中調用剛才寫的WebService函數就可以調試了,
7、調試成功後就可以轉類型了,將Web App Debugger類型轉換為ISAPI類型其實很簡單,我們
先重新建一個ISAPI類型的WebService項目,依次選擇New|Other|WebServices|
SOAP Server Application|ISPA/…,提示是否創建介面時選擇「是」,然後輸入和剛才一
樣的介面名,接著保存好,然後將調試成功的Web App Debugger類型的WebService項目中的
介面單元和介面實現單元復制替換掉剛剛創建的ISAPI類型項目中的介面單元和介面實現單元,
然後打開ISAPI類型的WebService,編譯生成dll。至此ISAPI類型的WebService建立成功。
8、將ISAPI類型的WebService發布到IIS上。在IIS中新建站點,新建時將執行許可權設置成「腳本
和可執行文件」,將WebService整個項目拷貝到站點文件夾下,啟動站點,該WebService就算
發布成功了,如果IIS是6.0以上的注意在Web服務擴展中將「所有未知ISAPI擴展」設置為允許,
具體設置可參見IIS幫助文檔。
9、如何用Delphi調用剛才寫的WebService。在瀏覽器中輸入剛才站點的路徑,如:
http://192.168.1.5:90/,瀏覽器轉到項目所在文件夾,
點擊bin,打開生成的dll文件夾,再點擊生成的dll文件,打開如下圖所示的的dll描述頁面,
該dll中有三個介面函數HZ,LJ,SaveData,它們都是供別人調用的介面函數。
點擊WSDL打開WSDL描述頁面,此時復制該頁面的網址,這個網址是我們要用到的。
10、 得到網址後,新建一個Application,我們就在這個Application中調用剛才的WebService。
依次點擊New|Other|WebServices|WSDL Import,如後提示輸入網址,我們輸入剛才復制的
網址,點擊next,finish,此時Delphi將自動添加一個單元,該單元就是調用WebService的
單元,有了這個單元我們就可以調用WebService了。在Unit1中引用該單元,再添加一個按鈕,
在按鈕的單擊事件中聲明一個介面對象,然後調用自動生成單元中的GetMainIntf(該方法是
自動生成的)函數給這個介面對象賦值,然後就可以用這個介面對象調用介面函數了。
Ⅸ delphi中WebBrowser控制項怎麼模擬點擊網頁框架中的按鈕button
假如按鈕Name或ID是 button1
var
o:Olevariant;
o := WebBrowser1.OleObject.document.all.item('button1',0);
o.click;