2013-08-15 4 views
5

मैं कहाँ एक फ़ाइल सिर्फ बचाया गया था फ़ोल्डर खोलें और फ़ाइल का चयन करना चाहते हैं, उसके लिए मैं इस छोटे से कोड का उपयोग करें:फ़ोल्डर खोलें मुद्दा

var psi = new ProcessStartInfo("Explorer.exe", "/select," + dlg.FileName); 
       Process.Start(psi); 

यह पूरी तरह से काम करता है।

private static void OpenFolderAndSelectMyFile(string fileName) 
{ 
    if (MySettings.Default.openFolder == true) 
    { 
     var psi = new ProcessStartInfo("Explorer.exe", "/select," + fileName); 
     psi.WindowStyle = ProcessWindowStyle.Maximized; 
     Process.Start(psi); 
    }  
} 

यह अपेक्षा के अनुरूप काम नहीं करता है::

मैं कई स्थानों में इस कोड को लगाने की जरूरत है तो मैं एक विधि बनाने का फैसला किया, वहाँ भी इस विधि में एक शर्त है इस मूल फ़ोल्डर खोलता है (मेरे फ़ाइल वाले फ़ोल्डर का)। यह फ़ोल्डर का भी चयन करता है।

क्यों व्यवहार और कैसे इसे हल करने में इस अंतर?

+5

आप 'में पारित किया जा रहा filename' जाँच की है? –

+2

क्या आप कॉलिंग कोड भी पोस्ट कर सकते हैं? –

उत्तर

3

ऐसा होने का एकमात्र तरीका है, fileName यह आपके मूल कोड में नहीं था। कोड बिल्कुल वही है, और उम्मीद के अनुसार काम करेगा, अगर fileName वास्तव में मूल कोड स्थान में था।

यह संभावना है कि fileName अब फ़ाइल नाम सहित फ़ाइल फ़ाइल के पूर्ण पथ के बजाय फ़ोल्डर का पूरा पथ है।

+2

आप सही हैं, मैं एक स्ट्रिंग को पार कर रहा था जिसे संशोधित किया गया था। अब यह ठीक से काम करता है। – Sturm

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