2011-10-06 191 views
0

我需要克隆的瀏覽器實例瀏覽器實例,在華廷IE是共享資源,這使得很難保存以前的瀏覽器實例如何克隆在華廷

var browser = new IE(http://www.stackoverflow.com); 

var copybrowser = browser; 

browser.goto("http://www.superuser.com"); 

console.WriteLine(browser.Uri); 
console.WriteLine(copybrowser.Uri); 

output: 
http://www.superuser.com 
http://www.superuser.com 

在這種情況下,我需要存儲以前例如,我已經看到了華廷克隆的方法,但我無法記得,沒有任何一個如何解決這個問題,我需要得到瀏覽器的前一個實例

+0

有沒有人有任何線索? –

+0

就你的情況而言,'copybrowser'只是'browser'指向的同一個對象的引用,所以這些顯然是相同的。我甚至不確定是否有可能在WatiN中創建一個現有的瀏覽器實例的克隆,因爲當你做'新的IE(...)'它會啓動一個新的實例,這將是一個麻煩「複製」您現有瀏覽器實例的所有狀態(您可能在某處導航,填寫大量表單域等)。但更有趣的是:_why_你想這樣做嗎?這聽起來更像是你可能試圖以錯誤的方式解決問題... – Nailuj

+0

可能是我在做錯誤的方式......但我實際上需要這種方法...即使現在我沒有找到任何正確的方法..... –

回答

0

只需創建與瀏覽器屬性的類

public class Session 
{ 
    public Browser browser { get; set; } 
    ... 
    ... 
} 

在這種情況下,您可以在每個實例都有自己的瀏覽器實例時創建多個Session實例。

+0

可能是我需要做更多的研究上述方法...我會試一試...並讓你知道 –