2011-01-10 15 views
7

का उपयोग कर एक अलग प्रक्रिया में इंटरनेट एक्सप्लोरर 8 प्रारंभ करें IE8 में हाल ही में जोड़े गए "फीचर" के कारण जहां नई विंडो स्वचालित रूप से single session से जुड़ी हैं, तो हमारा कुछ कोड गलत तरीके से व्यवहार कर रहा है।vbscript

ऐसा इसलिए है क्योंकि एक अलग ऐप सक्रिय होने पर एक नई आईई विंडो लॉन्च करेगा, और एक बार उपयोगकर्ता समाप्त हो जाने के बाद, विंडो बंद करें। यह आईई 7 में ठीक काम करता है क्योंकि खिड़कियों में सत्र की जानकारी अलग रहती है। हालांकि आईई 8 में, सत्र आईई विंडोज़ के बीच साझा किया जाता है, इसलिए हम पाते हैं कि "पॉप अप" ऐप पहले ऐप पर सत्र को दूषित कर देगा।

मैंने नामांकन स्विच के बारे में पढ़ा है, इसलिए यह एक कामकाज है, लेकिन मैं सोच रहा था कि क्या vbscript के "CreateObject" में समाधान करने का कोई तरीका था; अर्थात:

Dim ieWin As Object 
Set ieWin = CreateObject("InternetExplorer.Application") 

वहाँ जब CreateObject फ़ंक्शन को कॉल मापदंडों भेजने का एक तरीका है?

+1

http://blogs.msdn.com/b/ieinternals/ संग्रह/2010/04/05/समझ-ब्राउज़र-सत्र-life.aspx कुछ संदर्भ प्रदान करता है। आपने कमांड लाइन विकल्प का उपयोग करने में क्या गलत है यह निर्दिष्ट नहीं किया है? – EricLaw

+0

कमांड लाइन विकल्प में क्या गड़बड़ है यह है कि हमारे पास आईई विंडो लॉन्च करने वाले तृतीय पक्ष ऐप पर हमारा कोई नियंत्रण नहीं है। हम केवल उस vbscript को ट्विक कर सकते हैं जो इसका उपयोग करता है –

उत्तर

0

जिस समाधान के साथ हम आगे बढ़ रहे थे, हालांकि यह किसी और चीज के आसपास एक काम है - पॉप अप विंडो में एक नया यूआरएल असाइन कर रहा था।

कॉल सेंटर एजेंट अन्य कर्तव्यों उदा के लिए हमारी आंतरिक एप्लिकेशन का उपयोग करके किया जाएगा:

इससे पहले, यह इस प्रकार के रूप में काम "http: // internalsite /somepage.faces" दिन-दर-दिन आधार पर। जब उन्हें फोन कॉल मिला, तो एक तृतीय पक्ष ऐप "http: // आंतरिक /customerdetails.faces" को आग लगा देगा। इससे उपर्युक्त मुद्दों का कारण बन गया।

समाधान हम साथ चला गया: ": // internalsite /customerdetails.faces http" अपने आप यूआरएल उदाहरण के लिए "http: // customerdetailminisite /customer.faces"

हम सौंपा ।

इस तरह कॉल सेंटर एजेंट उनके मुख्य विंडो अन्य सामान के लिए खुला रखने और अभी भी कॉल को संभालने के लिए जब वे में आया था सक्षम हो सकता है।

4

नहीं, आईई उदाहरण बनाने के लिए COM का उपयोग करने का कोई तरीका नहीं है जो इस व्यवहार को निर्दिष्ट करता है (या किसी अन्य में, जैसे InPrivate, No Add-ons, आदि)। केवल जो चीज आप कर सकते हैं वह एक स्वचालन उदाहरण है जो उस उद्देश्य के लिए प्रदान किए गए CLSID का उपयोग करके MediumIL को डिफ़ॉल्ट करता है। http://blogs.msdn.com/b/ieinternals/archive/2011/08/03/internet-explorer-automation-protected-mode-lcie-default-integrity-level-medium.aspx

0

यदि आपके पास वेब एप्लिकेशन पर नियंत्रण है तो आप अपनी आईई विंडो के साथ लोड कर रहे हैं, आप इसे "कुकीएल" (http://msdn.microsoft.com/en-us/library/aa479314.aspx) पर अपना सत्र सेट कर सकते हैं जो आपके कई मुद्दों के साथ होने वाले मुद्दों से बच जाएगा।

संबंधित मुद्दे