• 0
بشا

مشكلة في ارسال مسار الملف الى برنامجي

سؤال

السلام عليكم ورحمة الله وبركاتـــــه :

كــــــل عام وانتـــم بخيــــــر جميعــــاً

عملت برنامج ينزل في قائمة الوندوز عند ضغط ملف كليك يمين على اى ملف { مثل في قائمة الوندوز Winrar , Winzib }

وارسال مسار الملف الذي اختيره الى برنامجـــي والحمد الله اشتغل 100%

ولكن عند تحديد اكثر من ملف وضغط على كليك يمين اختيار برنامجي فانه يفتح اكثر من نسخة مثلا اختيار ثلاثة ملفات وضغط على برنامج فانه

سيفتح منه ثلاثة نسخ ؟؟ وانا اريد نسخة واحدة فقط تفتح وارسال اليها مسار ملفات التى اختيرت ؟؟؟ اتمنى ان اتضح ؟

ارجو مساعدتي وشكرا للجميـــــــــــع ....

تم تعديل بواسطه بشا
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

9 إجابة على هذا السؤال .

  • 0

السلام عليكم

الداله Main تسبقل Array of Strings

تمكنك من التعامل مع اكثر من ملف علي التوالي

افضل لو تضع كود داله main

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

وعليكـــم السلام ورحمة الله وبركاته

لقد حاولت ذلك فلم انجح في ذلك . عند اختيار اكثر من ملف وضغط على برنامج فانه يفتح اكثر من نسخة وهــي على حسب عدد الملفات التى اخترتها ... وهذا خطا طبعا ولم اعرف المشكلة اين هل هي ذاخل Main

ام خارجها ...

وهذا كود الذي استخدمته في Main

static void Main(string[] args) 
{
foreach(string s in args)
MessageBox.Show(s);

Application.Run(new Form1());
}

وشكـــرا اخي وعزيزي م. أحمد على مرورك ومساعدتـــي ويجعله الله إن شاء الله في ميزان حسناتك

تم تعديل بواسطه بشا
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الكود بيقول ان بيظهر MessageBoxs عدد الملفات المختاره

بس انت بتقول البرنامج نفسه اللي بيفتح نسخه جديده لكل ملف

ممكن توضح اكتر ؟؟

او ارفق الجزء الخاص بالموضوع علي شكل برنامج لعمل test عندي ان شاء الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طبعاً لو حدد اكثر من ملف واخترت البرنامج فانه سيظهر MessageBoxs على عدد الملفات التى سبق واخترتها ( ومـــع بعضها ) .. بمعنى لو اخترت 3 ملفات وضغط على البرنامج فانه سيطبع 3 MessageBoxs مع بعضها ..

بدون ضغط على زر اوكي ليطبع رسالة ثانية ثم تضغط اوكي ليطبع رسالة الثالثة يعني

يطلعــوا 3 MessageBoxs مع بعض ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

فعلا بيفتح اكتر من نسخه حسب عدد اللفات المختاره

بس ممكن يفتح نسخه واحده بغض النظر عن عدد الملفات

بالكود ده بس لست متأكد ان كان كفاءه ولا لأ

 static void Main(string[] args)
{
Process p = Process.GetCurrentProcess();
Process[] ps = Process.GetProcesses();
int count = 0;
foreach(Process pp in ps)
{
if(pp.ProcessName == p.ProcessName)
{
count++;
}
if(count > 1)
{
pp.Kill();
return;
}
}

foreach (string s in args)
{
MessageBox.Show(s);
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}

بس المشكله انه بيتعامل مع اخر ملف في الملفات المختاره فقط

هحاول ان شاء الله افكر في الحل :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم...

أخي ما رأيك لو تقوم بهذه التجربة.. أظنها ستنجح...

سأعدل قليلا على الكود الذي وضعته أنت اذا سمحت لي..

static void Main(string[] args) 
{

string abc="";
foreach(string s in args)
abc+=s+"\n";


MessageBox.Show(abc);

Application.Run(new Form1());
}

ان شاء الله تستفيد منه أخي...

بالتوفيق....

تم تعديل بواسطه Andalus
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شكرا أخ Andalus لمرورك

الموضوع

ان امتداد ملفات معين يتم فتحه ببرنامج معين مثلا

فعند فتح الملف يتم تمرير مساره الي البرنامج و يفتح البرنامج و يتعامل البرنامج مع هذا المسار

المشكله

لو نشط المستخدم مجموعه من الملفات و قام بفتحهم

يتم فتح نسخه من البرنامج لكل ملف علي حده

المطلوب

كيف يتم فتح نسخه واحده لهم جميعا و يتم تمرير مساراتهم الي البرنامج جميعا ايضا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
شكرا أخ Andalus لمرورك

الموضوع

ان امتداد ملفات معين يتم فتحه ببرنامج معين مثلا

فعند فتح الملف يتم تمرير مساره الي البرنامج و يفتح البرنامج و يتعامل البرنامج مع هذا المسار

المشكله

لو نشط المستخدم مجموعه من الملفات و قام بفتحهم

يتم فتح نسخه من البرنامج لكل ملف علي حده

المطلوب

كيف يتم فتح نسخه واحده لهم جميعا و يتم تمرير مساراتهم الي البرنامج جميعا ايضا

شكرا أخي على التوضيح....

أعتذر عن فهمي الخاطئ للموضوع... :wacko:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .