سؤال

ويستطيع المستخدمون إرفاق المستندات المطلوبة إلى الجهات المختلفة في التطبيق. وبطبيعة الحال، إذا كان المستخدم A إرفاق ملف TIFF.، قد لا يكون المستخدم B المشاهد لهذا النوع من الملفات.

وهكذا أود أن تكون قادرة على طرح هذا الحوار:

بديل النص http://www.angryhacker.com/toys/cannotopen.png

وطلبي هو C # مع VS2005.
حاليا أقوم به Process.Start وتمرير في اسم الملف. إذا تم العثور على أي جمعية، فإنه يطرح استثناء.

هل كانت مفيدة؟

المحلول

وهذا ينبغي أن نفعل ذلك:

System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "rundll32.exe";
p.StartInfo.Arguments = "shell32.dll,OpenAs_RunDLL " + yourFileFullnameHere;

p.Start();

نصائح أخرى

Process pr = new Process();
pr.StartInfo.FileName = fileTempPath;
pr.StartInfo.ErrorDialog = true; // important
pr.Start();
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top