PDA

View Full Version : سوال: Refresh سیستم بدون Restart برای اعمال تغییرات Registry



Amir4317
یک شنبه 20 اردیبهشت 1394, 23:46 عصر
سلام و درود بر همه‌ی دوستان و برنامه نویسان گل!

چندتا تغییر در رجیستری برای شناساندن پسوندهای جدید به سیستم انجام دادم.
می خوام که بدون راه اندازی دوباره‌ی سیتم این تغییرات روی Explorer اعمال بشن.

در برخی از نرم افزارهای Player هم دیدم (و شاید دیده باشید) که بعد از پایان نصب کل سیستم یک بار رفرش میشه و آیکون ها به روز میشن.
یه چیزی تو همین مایه ها، آخه من خیلی قانعم!

پیشاپیش از راهنمایی هاتون ممنونم.

omid nasri
دوشنبه 21 اردیبهشت 1394, 07:26 صبح
در بخش پروسس ها سیستم برسی کن

مهرداد صفا
دوشنبه 21 اردیبهشت 1394, 12:31 عصر
سلام.
از تابع SChangeNotify (https://msdn.microsoft.com/en-us/library/windows/desktop/bb762118%28v=vs.85%29.aspx) استفاده کنید.

Amir4317
یک شنبه 27 اردیبهشت 1394, 22:26 عصر
سلام
سپاس از آقا مهرداد عزیز
البته من کد C#‎‎‎‎‎‎ رو می‌خواستم که لطف C++‎‎‎‎‎‎ رو کشیدید منم از همون نخ رو گرفتم به اینجا رسیدم:


{

// ویرایش رجیستری
.....
.....

// Tell explorer the file association has been changed
SHChangeNotify(0x08000000, 0x0000, IntPtr.Zero, IntPtr.Zero);

}


[DllImport("shell32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern void SHChangeNotify(uint wEventId, uint uFlags, IntPtr dwItem1, IntPtr dwItem2);







دوستان نیاز داشتن استفاده کنن.

Amir4317
دوشنبه 04 خرداد 1394, 00:30 صبح
کد اصلاح شد!