2013-01-18 12 views
5

लॉन्च नहीं करता है। मैं नमूना .txt फ़ाइल के साथ Launcher.LaunchFileAsync() विधि का उपयोग करने की कोशिश कर रहा हूं और यह काम नहीं करता है - हमेशा WordPad के लिए झूठा लौटाता है (जो विंडोज 8 पर डिफ़ॉल्ट प्रोग्राम है .txt फ़ाइलों को प्रदर्शित करने के लिए)।"विंडोज़ सिस्टम। लॉन्चर" वर्डपैड

हालांकि अगर मैं कंट्रोल पैनल में नोटपैड या वर्ड सब कुछ ठीक काम करता हूं तो 0tसही काम करता है और फ़ाइल सही तरीके से प्रदर्शित होती है।

कोई विचार यह मामला क्यों है?

+0

तुम सिर्फ कॉल कर रहे हैं 'Launcher.LaunchFileAsync (" MyFile.txt " ')', है ना? और आप सुनिश्चित हैं कि वर्डपैड डिफ़ॉल्ट TXT हैंडलर है? –

+0

यह एक क्लिक हैंडलर है जिसे मैं कॉल कर रहा हूं: var picker = new fileOpenPicker(); पिकर। FileTypeFilter.Add ("। Txt"); var file = picker प्रतीक्षा करें। PicSingleFileAsync(); var success सफलता = लॉन्चर का इंतजार करें। लांचफाइलएसिंक (फ़ाइल); अगर (! सफलता) { txtBlock1.Text = "फ़ाइल खोला नहीं जा सका।"; } वर्डपैड विंडोज 8 पर .txt के लिए डिफ़ॉल्ट हैंडलर है लेकिन इससे कोई फर्क नहीं पड़ता क्योंकि लॉन्चर किसी दिए गए फ़ाइल प्रकार के लिए डिफ़ॉल्ट रूप से जो भी ऐप पंजीकृत होता है उसे लॉन्च करना होता है। –

+0

मैं वही पुष्टि कर सकता हूं जो मेरे साथ हो रहा है। दुर्भाग्यवश मेरे पास आपके लिए कोई स्पष्टीकरण या समाधान नहीं है। –

उत्तर

0

यदि आप बस डेस्कटॉप एप्लिकेशन जैसे (नोटपैड, वर्डपैड, इंटरनेट एक्सप्लोरर इत्यादि) चलाने के लिए चाहते हैं तो प्रोसेस विधि और प्रोसेस स्टार्टइन्फो क्लास के माध्यम से जाएं।

try 
{ 
// Start the child process. 
    Process p = new Process(); 
    // Redirect the output stream of the child process. 
    p.StartInfo.UseShellExecute = false; 
    p.StartInfo.FileName = "C:\Path\To\App.exe"; 
    p.Start(); 
} 

// Uses the ProcessStartInfo class to start new processes, 
// both in a minimized mode. 

void OpenWithStartInfo() 
{ 
    ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe"); 
    startInfo.WindowStyle = ProcessWindowStyle.Minimized; 

    Process.Start(startInfo); 

    startInfo.Arguments = "www.northwindtraders.com"; 

    Process.Start(startInfo); 
}