2010-03-08 11 views
5

में एंकर के साथ प्रक्रिया। स्टार्ट (यूआरएल) मैं प्रक्रिया का उपयोग करने की कोशिश कर रहा हूं। डिफ़ॉल्ट ब्राउज़र में स्थानीय HTML फ़ाइल लॉन्च करने के लिए प्रारंभ करें। "# जो अनुभाग/Topic1.htm" बिट, किसी कारण से बंद छीन लिया जाता है ताकि यह जानकारी ब्राउज़र को पास नहीं कीयूआरएल

"file:///C:/Documentation/HelpContent/default_CSH.htm#SectionA/Topic1.htm" 

समस्या है,:

एक उदाहरण यूआरएल इस प्रकार है। हालांकि यह गैर-स्थानीय यूआरएल के लिए ठीक काम करता है।

क्या कोई जानता है कि मैं इसे कैसे काम कर सकता हूं या यह कुछ प्रकार की निवारक सुरक्षा समस्या है?

धन्यवाद

+0

पता अगर आप ब्राउज़र पता बार में पेस्ट करते हैं तो पता चलता है? एंकर लेबल से/चरित्र को हटाने का प्रयास करें ... – munissor

+0

हाँ मैं सहमत हूं। उस यूआरएल में दो फाइलनाम हैं, जो थोड़े अजीब हैं। – jgallant

+0

दुर्भाग्यवश/वहां आवश्यक है - यूआरएल ऐसा है क्योंकि यह किसी अन्य फ्रेम में टॉपिक 1.htm लॉन्च कर रहा है (यह मैडकैप फ्लेयर से वेबहेल्प आउटपुट है) –

उत्तर

4

iexplore.exe पर उपयोग Process.Start, ताकि आप विशेष रूप से अपनी तर्क के रूप में URL निर्दिष्ट कर सकते हैं:

System.Diagnostics.Process.Start("iexplore.exe", @"file:///c:/dir/file.html#anchor"); 
+0

धन्यवाद - इस विधि का उपयोग समय के लिए किया है। वास्तव में मुझे इसे IE तक सीमित करने के बजाय डिफ़ॉल्ट ब्राउज़र में खोलने में सक्षम होना चाहिए। –

2

एक ब्राउज़र में एक लंगर के साथ कोई URL का शुभारंभ यदि आप ओएस जाने से काम नहीं करता डिफ़ॉल्ट ब्राउज़र निर्धारित करें। इस काम को करने का एकमात्र तरीका ब्राउज़र के निष्पादन योग्य को निर्दिष्ट करना है क्योंकि आईई के लिए बाइनरीकोडर लिखा गया है। यह फ़ायरफ़ॉक्स के लिए एक ही तरह से काम करता है।

सबसे अच्छा समाधान स्पष्ट रूप से रजिस्ट्री से डिफ़ॉल्ट ब्राउज़र के पथ को निर्धारित करने के लिए है और फिर विशेष रूप से निष्पादन योग्य को कॉल करें।

+0

[यहां] (http://en.code-bude.net/2013/04/28/how-to-retrieve-default-browsers-path-in-c/) एक अच्छा लेख है जो आपको दिखा रहा है कि कैसे प्राप्त करें रजिस्ट्री से डिफ़ॉल्ट ब्राउज़र पथ – Chris