PDA

View Full Version : سوال: یک سوال مهم در سی شارپ



mazaher5723
جمعه 04 فروردین 1391, 21:52 عصر
سلام
دارم یه برنامه واسه یک شرکت می نویسم.
می خوام بدونم چه جوری میشه یه برنامه نوشت که مثلا یک فابل تولید کردیم وقتی روی اون فایل دوبل کلیک کرد با برنامه من باز شه و اطلاعات درون فایل رو تو برنامه ام سرجاشون ببینه؟؟
{مثل برنامه اتوکد وقتی روی فایل ذخیره شده کلیک می کنیم اول اتوکدو باز می کنه بعد اطلاعات درون فایلو تو برنامه اتوکد نشون میده!!}

با تشکر
مظاهر

رافعی مهدی
جمعه 04 فروردین 1391, 22:43 عصر
سلام
یه نگاهی به اینجا (http://stackoverflow.com/questions/69761/how-to-associate-a-file-extension-to-the-current-executable-in-c-sharp) بیاندازید.

mazaher5723
جمعه 04 فروردین 1391, 23:01 عصر
سلام
یه نگاهی به اینجا (http://stackoverflow.com/questions/69761/how-to-associate-a-file-extension-to-the-current-executable-in-c-sharp) بیاندازید.
ممنونم
رفتم سایتو دیدم،متوجه نشدم اگه وقشو داین راهنماییم کنید/
تشکر

C#.net
جمعه 04 فروردین 1391, 23:50 عصر
برنامه ضمیمه شده اطلاعاتی رو که در یک فایل متنی ذخیره شده و با هر پسوند توسط برنامه ما باز می شه (به وسیله open with)رو در تکست باکس می نویسه.

نکته هم در متد مین برنامه هست:


public static void Main(string[] args)
{
string SelectedFile="";
if (args.Length > 0)
{
SelectedFile = Convert.ToString(args[0]);
}
App app = new App();
app.SelectedFile = SelectedFile;
Application.Run(app);
}




اما این که بخواهید برنامه به صورت اتوماتیک یک سری از پسوند ها رو بشناسه به استراتژی deployment شما مر بوط می شه یه راه ساده اینه که مسیر زیر رو دنبال کنید:

Project Properties -> publish -> Options -> File Association

توجه داشته باشید که برای استفاده از این روش باید برنامه رو پابلیش و نصب کنید(تغییراتی در رجیستری اعمال می شود)
با کمی جستجو و آزمون به نتیجه مطلوب خواهید رسید

vof.ir
شنبه 05 فروردین 1391, 00:01 صبح
شما، باید این را در نظر داشته باشید که ، اول از همه، یک کاری کنید که وقتی روی فایل هایی با پسوند مورد نظر شما کلیک می شود، برنامه شما اجرا شود
در این حالت، برنامه شما وقتی که می خواهد اجرا شود ویندوز یک همچین فرمانی را صادر می کند
c:\your_Program_File.exe -your_File_Path
خب، این رشته داره آدرس فایل اجرایی برنامه شما را به علاوه یک پارامتر که آدرس اون فایل باشه، مشخص می کنه
حالا چه جوری میشه پارامتری که در زمان اجرای برنامه ارسال می شود را دریافت کرد و از آن استفاده کرد؟؟؟
توی تابع
public static void Main(string[] args)
اون آرگومان args در حقیقت، شامل تمامی پارامترهایی هست که توسط کاراکتر - مشخص شده اند
خب، تا بدین جا، شما آدرس فایل را دارید، و این یعنی در بدو شروع برنامه شما آدرس فایل مورد نظرتان را در اختیار دارید، حالا باید آن را باز کنید و داخلش را بخوانید و بسته به اینکه با چه ساختاری درون فایل، اطلاعات را ذخیره کرده باشید
باید اون اطلاعات را بخوانید، و درون فرمهاو اجزای مختلف برنامتون ازش استفاده کنید!
سوالی هست؟

mazaher5723
شنبه 05 فروردین 1391, 00:07 صبح
واقعا تشکر و ممنوم از لطفتون.
بسیار زیبا گفتین.