線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2363
推到 Plurk!
推到 Facebook!

如何自動將window.open開啟的小視窗內容自動存檔呢?

答題得分者是:pceyes
lcc1299
一般會員


發表:39
回覆:42
積分:21
註冊:2004-09-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-07-08 05:02:51 IP:123.204.xxx.xxx 訂閱
由於我本機有一個程式,他一段時間會去跟遠端伺服器要一個表格資料回來。而他是利用window.open打開一個窗口,將資料顯示在上面。()
var tt=window.open ('./go.jsp?code=" code "&x=" x1 "&y=" y1 "&war=" war "&hero=" hero "&warnum=" warnum "', '" windowName "', 'height=200, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no')");
有什麼方法,可以將該視窗的表格內容自動儲存下來呢?hook到該窗口後?我該做什動作呢?
※該回傳的資料已經跨域,所以我無法利用jsp的方法把他存下來(好吧~至少我不會)。所以求助於利用win32的方法,看看能不能把他存下來。
謝謝。
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-07-08 09:58:14 IP:122.118.xxx.xxx 訂閱
網際網路程式設計討論區(Delphi) » 請問如何用idhttp抓網頁的原始檔來做分析
http://delphi.ktop.com.tw/board.php?cid=30&fid=67&tid=90226
------
努力會更接近成功
lcc1299
一般會員


發表:39
回覆:42
積分:21
註冊:2004-09-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-07-09 09:43:01 IP:123.204.xxx.xxx 訂閱
可是,我有先連線後才去跟他拿資料的,如果用idhttp,這樣好像會取回沒連線時的資料!!~。
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-07-09 18:31:25 IP:61.66.xxx.xxx 訂閱
照相你覺得是不是好方法....
------
======================
昏睡~
不昏睡~
不由昏睡~
lcc1299
一般會員


發表:39
回覆:42
積分:21
註冊:2004-09-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-07-09 20:47:25 IP:123.204.xxx.xxx 訂閱
嘿嘿~~~不是@"@!~~,因為之後要計算他的值,如果我可以把他的code拿來分析,這樣我就不用在電腦前了,讓他自已做就好了。
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-07-09 23:44:52 IP:220.141.xxx.xxx 訂閱
程式片段,應該可以用的,剛才試過
[code delphi]

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComObj,SHDocVw_TLB ,MSHTML_TLB, StdCtrls, OleCtrls,
SHDocVw, ExtCtrls, ComCtrls,shlobj,activex;

.........
var
Form1: TForm1;
ShellWindow: IShellWindows;
WB: IWebbrowser2;
spDisp: IDispatch;
IDoc1: IHTMLDocument2;
Document: Variant;

.......
procedure TForm1.Button2Click(Sender: TObject);
var
k, m: Integer;
ovElements: OleVariant;
i: Integer;

begin
ShellWindow := CoShellWindows.Create;
// get the running instance of Internet Explorer
for k := 0 to ShellWindow.Count do
begin
spDisp := ShellWindow.Item(k);
if spDisp = nil then Continue;

// QueryInterface determines if an interface can be used with an object
spDisp.QueryInterface(iWebBrowser2, WB);

if WB <> nil then
begin
WB.Document.QueryInterface(IHTMLDocument2, iDoc1);
if iDoc1 <> nil then
begin
memo2.Text := idoc1.body; // Get html
memo3.Text := idoc1.body.innerText; // Get text
end; // if idoc1 <> nil
end; // if wb <> nil
end; // for
end;




end;


[/code]
------
努力會更接近成功
lcc1299
一般會員


發表:39
回覆:42
積分:21
註冊:2004-09-12

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-07-12 05:48:06 IP:123.204.xxx.xxx 訂閱
謝謝大家的解答,我先結案吧。更謝謝pceyes大大。你都已經有試過了,應該就沒問題了,我電腦重灌,找不到DELPHI光碟片,目前無法做測試,不過我會做測試的。如果有問題,我在同文章上在補上來,謝謝大家。
系統時間:2024-11-25 9:26:29
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!