پیشنهاد برای دوستان پلاگین ساز

silvercover

کاربر متخصص
درود،

از اونجاییکه تعداد زیادی از برنامه بسته به شرایط نیاز دارن تا یک برنامه یا برنامه های خاص از قبل نصب شده باشه و صحتش رو بررسی کنن بد ندیدم تا این پیشنهاد رو برای علاقه مندان مطرح کنم که دست به کار ساخت پلاگینی بشن که اقدام به بررسی نصب بودن یا نبودن برنامه های زیر کنه و مقدار رو به کاربر بازگردونه:

کد:
- Acrobat Reader
- Microsoft Office
- Windows Media Player Version
- DirectX Version
- Internet Explorer Version
- Firefox Version
- Flash Player Version
- DivX, MKV Codecs
- Java Version
- .Net Framework Version

و احیانا سایر مواردی که به ذهن شما می رسه که تقاضا دارم اینجا مطرحش کنید.
 

m javad

کاربر متخصص
پیشنهاد خوبی هست
البته این کار نیاز به پلاگین خاص نداره و تنها با پلاگینی که بتونه اطلاعات رجیستری رو بخونه عملی هست
 

silvercover

کاربر متخصص
دقیقا به این دلیل گفتم تبدیل به پلاگین بشه که کاربر نخواد درگیر پیدا کردن کلید های رجیستری و باقی قضایا بشه و با اطمینان فرمان پلاگین رو صادر کنه و نتیجه رو برگردونه. یادمون باشه که کاربرای mmb برنامه نویس های چیره دست نیستن و یا افرادی نیستن که قصد داشته باشن برنامه های سیستمی بنویسن.
 

m javad

کاربر متخصص
بله منم موافق با پیشنهادتون هستم.
این که این کار با پلاگینی که رجیستری رو بخونه هم میشه رو جهت تکمیل این پست گفتم
فقط تنها ایراد این کار اینه که ورژن های بعدی از نرم افزارهایی که فرمودید که قراره توی لیست پلاگین قرار بگیرند ممکنه به اصول رجیستر نویسی در ورژنهای قبلیه خودشون پایبند نباشند.منظورم اینه که ممکنه پلاگین نرم افزارها رو تا این ورژن موجود بشناسه
ولی با انتشار ورژن بعدی دیگه این کاررو نتونه بکنه (حالا به دلایل مختلف، مثلا تغییر شناسه ای که ما با اون توی رجیستری اون برنامه رو میشناختیم یا تنها تغییر نام Value ها در رجیستری و ...)
پیشنهادتون برای این قسمت چی هست؟
نظرتون اینه که پلاگین هم هر چند وقت یکبار آپدیت بشه؟
 

silvercover

کاربر متخصص
خیلی از برنامه ها در رجیستری پسوندهاشون رو به جهت ویژگی Associativity ثبت می کنن. ضمن اینکه مسیر برخیشون هم توی رجیستری هست. علاوه بر این، سر نخ های خوبی توی Program Files و همون محلی از رجیستری که اطلاعات پیرامون برداشتن برنامه ها (Uninstall) هست ثبت میشه. بنا بر این با آمیزه ای از این موارد میشه به نتایجی رسید.

ضمن اینکه شرکت ها تا جایی که ممکن هست الگو های پذیرفته شده رو از بین نمی برن و یک سری موارد به لحاظ سازگاری ایجاد می کنند.
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
بله پلاگین خیلی خوبی میشه و کار خیلی از کاربر ها رو راحت میکنه اگه شد و شب وقت داشتم همه سعیم رو میکنم این پلاگین رو بسازم و امشب یا فردا صبح ارائش کنم.
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
لازم شد یک چیز رو هم اضافه کنم که بله همینطور که شما گفتین و من قبلا تست کرده بودم اکثر کلیدها برنامه توی Unistall ثبت میشن و بهترین راه برای چک کردن هم همون قسمت هست و اگه بخوایم کلیدها رو تو قسمت های دیگر رو چک کینم چون همونطور که دیدم بعد از Unistall کردن برنامه هم باز این کلیدها باقی میمونن , سرکارم یک کامپیوتر دارم و همینطور دلفی رو و یک Backup از سیستمم میرم از اونجا مدادم برنامه ها رو نصب میکنم و تو نصب کلیدهاش رو مانیتور میکنم و این پلاگین رو پیاده میکنم و در آخر باز Backup برمیگردونم و مجددا پلاگین رو چک میکنم تا هیچ عیبی نداشته باشه , حالا نظر شما در مورد اسم پلاگین چیه و برای هر پارامتر چه اسمی رو در نظر بگیرم تا هم اسم پلاگین به یاد کاربر بمونه و هم مدادم اسم پارامترهاش رو از یاد نبره.
به احتمال زیاد هم همین امشب ارائش میکنم.
ضمنا تو اون لیست که قرار دادین و جلوی بعضی از اسمها Vesrsion قرار دادین مانند Flash Player Version منظوزتون این بوده که ورژنش هم چک بشه ؟
 
آخرین ویرایش:

silvercover

کاربر متخصص
ضمنا تو اون لیست که قرار دادین و جلوی بعضی از اسمها vesrsion قرار دادین مانند flash player version منظوزتون این بوده که ورژنش هم چک بشه ؟

خب برای بعضی موارد در کنار اینکه اون برنامه نصب شده باشه، نسخه اش هم لازم هست. مثلا همین فلش پلیر. پس باید توابع طوری باشن که نسخه نرم افزار مربوطه رو هم برگردونن.

در مورد اسمش هم به نظرم Version Checker بد نباشه یا ترکیباتی از این دست.
 
آخرین ویرایش:

loo30fer

کاربر متخصص مولتی مدیا بیلدر
خب برای بعضی موارد در کنار اینکه اون برنامه نصب شده باشه، نسخه اش هم لازم هست. مثلا همین فلش پلیر. پس باید توابع طوری باشن که نسخه نرم افزار مربوطه رو هم برگردونن.
بله کاملا درسته و من فکر میکنم دیگه نیاز نباشه دو تابع برای پلاگین ایجاد کنم یکی چک کردن نصب بودن و دیگری ورژن برنامه پس فکر میکنم اگه تنها برای ورژن برنامه پیادش کنم کافی باشه چون هم میشه ورژن برنامه رو گرفت و هم با همین ورژن از نصب بودن یا نبودنش مطلع شد مثلا اگه متغیر خالی برگشت برنامه نصب نیست اگرم که خالی برنگشت برنامه نصبه.
الان تا حدی پلاگین رو ساختم و فعلا دارم روی تمامی ورژن ها چکش میکنم تا روی تمامی نسخه ها بدرستی جواب بده و برای کوتاه کردن کدنویسی و کمتر کردن متغیر ها هم یک فانکشن تعریف کردم و تو هرتابع آدرس رجیستری مربوطه رو توی یک متغیر ریخته میشه اون فانکشن صدا زده میشه تا اون مقدار رو از متغیر دریافت کنه و مقدار رو برگردونه , اینکار رو هم کردم تا دیگه نیاز نباشه برای هرتابع کدنویسی مجدد بکنم و همینطور یک متغیر اختصاص بدم و مقدار تو رم هم زیاد بالا نره.
 
آخرین ویرایش:

m javad

کاربر متخصص
خسته نباشی آقای لوسیفر
چی شد پس!!
نمیخوای بزاریش ببینیم چی شده
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
خسته نباشی آقای لوسیفر
چی شد پس!!
نمیخوای بزاریش ببینیم چی شده
سلامت باشی راستش درگیر بعضی برنامه ها مثل Adobe Reader و Office هستم چون کلیدهای هر ورژن فرق میکنه دارم روش کار میکنم وگرنه الان پیوست میکردم.
 

silvercover

کاربر متخصص
بله کاملا درسته و من فکر میکنم دیگه نیاز نباشه دو تابع برای پلاگین ایجاد کنم یکی چک کردن نصب بودن و دیگری ورژن برنامه پس فکر میکنم اگه تنها برای ورژن برنامه پیادش کنم کافی باشه چون هم میشه ورژن برنامه رو گرفت و هم با همین ورژن از نصب بودن یا نبودنش مطلع شد مثلا اگه متغیر خالی برگشت برنامه نصب نیست اگرم که خالی برنگشت برنامه نصبه.
الان تا حدی پلاگین رو ساختم و فعلا دارم روی تمامی ورژن ها چکش میکنم تا روی تمامی نسخه ها بدرستی جواب بده و برای کوتاه کردن کدنویسی و کمتر کردن متغیر ها هم یک فانکشن تعریف کردم و تو هرتابع آدرس رجیستری مربوطه رو توی یک متغیر ریخته میشه اون فانکشن صدا زده میشه تا اون مقدار رو از متغیر دریافت کنه و مقدار رو برگردونه , اینکار رو هم کردم تا دیگه نیاز نباشه برای هرتابع کدنویسی مجدد بکنم و همینطور یک متغیر اختصاص بدم و مقدار تو رم هم زیاد بالا نره.

ضمن تشکر. پیشنهاد می کنم که از هیچ فشرده ساز و پکری برای کم کردن اندازه پلاگین استفاده نکنید تا مشکلاتی براش به جهت تشخیص آنتی ویروس ها رخ نده.
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
با سلام بابت تاخیر در ساخت پلاگین عذرخواهی میکنم راستش یکی مشکلات کاری و دیگری مشکلات ثبت کلیدهای رجیستری بعضی برنامه ها من رو اذیت میکرد ولی باز کوتاه نیومدم راستش برنامه مثلا office رو که میخواستم ورژنش رو بگیرم آدرس کلیدهای ورژنش برای هر ورژن متفاوت بودن چه 2003 و 2007 و 2010 و و من رو مجبور کرد آدرس رجیستری هر ورژن رو به پلاگین بدم و در صورتی که هرکدوم از کلیدها ثبت شده بود اون ورژن رو اعلام کنه و MediaPlayer هم که اصلا تو رجیستری ورژنش رو اعلام نکرده که یکدفعه راه دیگه ای به ذهنم رسید اونم گرفتن ورژن فایل از خود فایل اگزش اونموقع آدرس فایل جاری هم براحتی میشه از رجیستری گرفت و دیگه تو ورژنهای مختلف کلیدهای متفاوت مهم نیست و هم خیلی حرفه ای تر میشه و امکان اشتباه پلاگین هم خیلی کم میشه نظرتون چیه ؟
ضمنا با استفاده از همون روش رجیستری خالی هم با همون وقت کمم هرچقدرش رو که درست کردم رو براتون پیوست کردم که البته این نسخه Demo هست میتونید تستش کنید به خودم گفتم همینشم قرار بدم یکوقت خیال نکنید من یه چیزی گفتم درست میکنم و در رفتم :green:
بنا به توصیه شما جناب silvercover حتی این نسخش رو هم پک نکردم ببینید من چه پسر خوبیم :)
 

پیوست ها

  • SampleVersionChecker-Demo.rar
    89.8 کیلوبایت · بازدیدها: 68

silvercover

کاربر متخصص
ضمن تشکر ویژه بنده یک مثال برای به دست آوردن نسخه مدیا پلیر ویندوز ضمیمه کردم که قدیمی هست و میتونه الهام بخش باشه. ضمن اینکه منتظر سایر بخش های فهرست شده هم هستیم. چونکه بدون اون ها کار ناقص هست.
 

پیوست ها

  • Detectwmpver.zip
    34.9 کیلوبایت · بازدیدها: 35

m javad

کاربر متخصص
خسته نباشید
خیلی خوب شده، فقط یه سوال :
چرا حجمش اینقدر زیاده؟ پلاگینتون که visable نیست.
کدهای اضافیش رو حذف کنید حجمش به نصف کاهش پیدا میکنه.
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
ضمن تشکر ویژه بنده یک مثال برای به دست آوردن نسخه مدیا پلیر ویندوز ضمیمه کردم که قدیمی هست و میتونه الهام بخش باشه. ضمن اینکه منتظر سایر بخش های فهرست شده هم هستیم. چونکه بدون اون ها کار ناقص هست.
ممنون , بله درسته ولی در نظر دارم برای تمامی قسمتها از همون روشی که گفتم استفاده کنم.

خسته نباشید
خیلی خوب شده، فقط یه سوال :
چرا حجمش اینقدر زیاده؟ پلاگینتون که visable نیست.
کدهای اضافیش رو حذف کنید حجمش به نصف کاهش پیدا میکنه.
خوب برای این هست که برای این پلاگین مجبورم از کتابخانه Windows و Registry استفاده کنم وگرنه زیاد بودن کدهای من که نمیتونه زیاد باعث بالا رفتن حجم پلاگین من بشه و من همه سعیم رو کردم تا کدنویسی رو کمتر کنم همونطور که تو پست 9 گفتم و کدنویسی من تنها 5 کلیوبایت تو حجم پلاگین تاثیر داشته و تازه با دلفی 7 کمپایل کردن که کمترین حجم رو بعد از کمپایل داره وگرنه اگه با دلفی 2010 اگه کمپایل میکردم که حجمش میشد 325 کیلوبایت باز اگه خواستین میتونم انتهای اتمام ساخت پلاگین سورس رو قرار بدم تا ویرایشش کنید و اگه شد حجمش رو کمتر کنید.
 

m javad

کاربر متخصص
بله حق با شماست
ولی خود دلفی چیزای اضافی زیاد میزاره تو فایل!!
نیازی به سورس فایل نیست. من ساختارش رو بررسی کردم
من حجمش رو براتون کم کردم، تقریبا نصف شد
صلاح بدونید آپ میکنم برای دوستان
منتظر نسخه ی نهایی هستم
موفق باشید
 

loo30fer

کاربر متخصص مولتی مدیا بیلدر
بله حق با شماست
ولی خود دلفی چیزای اضافی زیاد میزاره تو فایل!!
نیازی به سورس فایل نیست. من ساختارش رو بررسی کردم
من حجمش رو براتون کم کردم، تقریبا نصف شد
صلاح بدونید آپ میکنم برای دوستان
منتظر نسخه ی نهایی هستم
موفق باشید
بله ممنون میشم , پس هروقتم ورژن نهایی رو قرار دادم شما باز زحمتش رو بکشین.
 

m javad

کاربر متخصص
بله ممنون میشم , پس هروقتم ورژن نهایی رو قرار دادم شما باز زحمتش رو بکشین.
حتما
هر وقت آماده شد، فایل رو بررسی میکنم و اگر بشه براتون کمش میکنم
اینم نمونه باحجم کم شده برای دوستان
 

پیوست ها

  • Low Size of VersionChecker.zip
    40.6 کیلوبایت · بازدیدها: 43

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

بالا