فراخوانی یک فایل exe

sogoli

Active Member
سلام
من در برنامه ام قصد دارم یک فایل exe را فراخوانی کنم ، با دستور زیر:

System.Diagnostics.Process.Start("c:\\1.exe");

حال سوالم این هست که به چه صورت میشه ادرس فایل مربوطه را بصورت پویا تعریف کنم.البته از کد زیر استفاده کردم ولی نشد:

System.Diagnostics.Process.Start(@"\1.exe");
 

bitaroos

Member
سلام
من نمیدونم آدرس دهی پویا چیه، من فقط آدرس دهی absolute و Relative شنیدم.
به روش اولی که شما استفاده کردی Absolute و به روش دوم Relative میگن.

البته اطلاعات من در این حده و شاید دارم اشتباه میکنم.

اگر فایل 1.exe در پوشه debug قرار داره، اون دستوری که نوشتید اشتباهه، باید به صورت زیر بنویسید

کد:
            System.Diagnostics.Process.Start("1.exe");

اگر هم فایلتون تو پوشه ی bin قرار داره باید به صورت زیر بنویسید

کد:
System.Diagnostics.Process.Start("..\\1.exe");

اگر باز هم تو یه پوشه قبل تره بازم باید یه دونه" \\.. "دیگه اضافه کنید و ...

------------------------------------------------------------------------------------------

یه راه دیگه هم هست.
مسیر پوشه ای که برنامه از اونجا اجرا شده، با کد زیر بدست میاد.

کد:
string folder = System.IO.Path.GetDirectoryName(Application.ExecutablePath);
بعد از نوشتن این کد باید اسم فایل مربوطه (1.exe) رو به آخرش اضافه کنید. که دو روش برای این کار هست

روش اول:

کد:
string file = folder + "\\1.exe";

روش دوم:

کد:
            string file = System.IO.Path.Combine(folder, "1.exe")

در آخر هم با دستور زیر برنامه اجرا میشه

کد:
System.Diagnostics.Process.Start(file);

امیدوارم منظورتون رو درست متوجه شده باشم.

__
 

جدیدترین ارسال ها

بالا