PDA

View Full Version : سوال: تغییر ایکن یک پسوند خاص با برنامه نویسی



shakery
چهارشنبه 16 اسفند 1391, 21:11 عصر
سلام دوستان
می خواستم ببینم چطوری میشه با کد نویسی ایکن یک پسوند خاص توی کامپیوتر رو عوض کرد
همچنین چطور میشه تنظیم کرد که یه فایل با پسوند خاص با برنامه ی خاصی باز بشه
مثلا همه ی فایل هایی که پسوند .xyz دارند ایکن شون تغییر کنه و با برنامه خاصی هم باز بشه

abdullah20
پنج شنبه 17 اسفند 1391, 11:19 صبح
سلام
در حالت عادی اگر از طریق خود ویندوز بخواهیم تنظیم کنیم که یه فایل با پسوند خاصی با برنامه ما اجرا شود روی فایل مورد نظر راست کلیک و با انتخاب گزینه خصوصیات پنجره ای باز میشود که در قسمت opens with میتواینم برنامه خودمون را انتخاب کنیم که ایکن همه ی فایلهای اون پسوند به ایکن برنامه ما تغییر پیدا میکنند و وقتی روی فایل دابل کلیک کنیم برنامه ما اجرا میشود
حالا فرض کنید ما برای فایلهای mp3 این تنظیم را کرده ایم و میخوام وقتی برنامه ما اجرا شد اون فایل صوتی توسط برنامه ما پخش شود برای این کار کافی است یک کنترل WindowsMediaPlayer روی فرم قرار دهید و در لود فرم کد زیر را مینویسیم :

string[] commandLineArgs = Environment.GetCommandLineArgs();
//آرگومان صفر نام و آدرس فایل اجرایی رو بر می گردونه
this.textBox1.Text = commandLineArgs[0];
//آرگومان بعدی نام و آدرس فایل باز شده رو بر می گردونه
if (commandLineArgs.Length > 1)
{
this.textBox1.Text = commandLineArgs[1];
}
axWindowsMediaPlayer1.URL = textBox1.Text;

ولی اگر بخواهید خودتون با کدنویسی این کار را انجام دهید میتونید از سورس زیر استفاده کنید

shakery
پنج شنبه 17 اسفند 1391, 16:24 عصر
ممنون دوست عزیز

hossein_sh2008
پنج شنبه 17 اسفند 1391, 22:23 عصر
سلام
دوست عزیز آیا امکانش هست با درگ کردن فایل روی نرم افزار هم فایل پخش بشه ،اگر ممکنه زحمتش رو بکشید

pedram.11
پنج شنبه 17 اسفند 1391, 22:37 عصر
سلام
public Form1()
{
InitializeComponent();
this.AllowDrop = true;
this.DragEnter +=new DragEventHandler(Form1_DragEnter);
this.DragDrop += new DragEventHandler(Form1_DragDrop);
}
void Form1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false) == true)
e.Effect = DragDropEffects.All;
}
void Form1_DragDrop(object sender, DragEventArgs e)
{
Start(((string[])e.Data.GetData(DataFormats.FileDrop))[0]);
}
void Start(string path)
{
System.Diagnostics.Process.Start(path);
}

abbas.oveissi
پنج شنبه 17 اسفند 1391, 22:39 عصر
سلام
دوست عزیز آیا امکانش هست با درگ کردن فایل روی نرم افزار هم فایل پخش بشه ،اگر ممکنه زحمتش رو بکشید

فکر کنم این مثال مشکلتون رو حل کنه : http://www.dotnetcurry.com/ShowArticle.aspx?ID=192&AspxAutoDetectCookieSupport=1