View Full Version : ریجیستر کردن dll ها در ویستا
dr.pantagon
یک شنبه 13 اردیبهشت 1388, 13:00 عصر
سلام
من برنامه خودم رو روی xp نوشتم و به خوبی جواب می ده ولی روی ویستا که می رم به محض اجرا برنامه می خواد ocx رو بخونه که خطای ریجیستر نبودن ocx رو میده
من می دونم چه جوری ocx رو ریجیستر کنم ولی روشی که من بلدم زیاد به درد کاربر ها با سطح علمی پایین نمی خوره
حالا کسی راهی سراغ داره که بشه با برنامه نویسی این کار رو انجام داد و از شر این درد سر خلاص شد ؟
راه حل من :
Run AS Cmd From administrator user
regsvr32 file.ocxولی حالا بخوام این کار رو به یک یوزر بگم اونم از پشت تلفن زیاد جالب نیست
Babak.Hassanpour
یک شنبه 13 اردیبهشت 1388, 14:53 عصر
برنامه PEBundle که معرفی کرده بودم ،براتون جواب نداد؟
ازین دست برنامه ها بازم دارم.بزارین روی ویستا تست کنم ، اگه جواب داد میزارم.
شما با ترکیب همین دستوری که گفتید با تابع شل وی بی ، می تونید اینکار رو بکنید.
Shell "regsvr32.exe /s " & """" & [Path and FileName] & """", vbHide
یه راه ساده واسه کاربران شما
یک فایل متنی با پسوند reg ایجاد کنید و این رو بریزید توش.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\dllfile\Shell]
[HKEY_CLASSES_ROOT\dllfile\Shell\Register]
[HKEY_CLASSES_ROOT\dllfile\Shell\Register\command]
@="regsvr32.exe \\\"%1\\\""
[HKEY_CLASSES_ROOT\dllfile\Shell\UnRegister]
[HKEY_CLASSES_ROOT\dllfile\Shell\UnRegister\command]
@="regsvr32.exe /u \\\"%1\\\""
به کاربر بدید و بگید اجراش کنه.بعد روی هر فایل DLL که مشکل داشت کلیک راست کنه و گزینه رجیستر رو بزنه.می تونید این کد رو ،واسه اکتیو ایکس ها هم توسعه بدید.کافیه بجای Dllfile گزینه مربوطه رو بزارید ،یعنی ocxfile
اینم نمونه کد (http://barnamenevis.org/forum/attachment.php?attachmentid=30478&stc=1&d=1241345215)
موفق باشید و ایضا کاربرانتون موفق باشند
dr.pantagon
یک شنبه 13 اردیبهشت 1388, 19:08 عصر
نه برنامه PEBundleرو ویستا جواب نداد ولی برنامه خوبی بود به کارم اومد تو xp
Shell "regsvr32.exe /s " & """" & [Path and FileName] & """", vbHide
از این کامند استفاده کردم قبلا ولی خوب از اونجایی که 90% vista کار ها با یوزر هایی غیر از administartor کار می کنن جواب نمی ده حتی اگر سطح دسترس کامل داشته باشه یوزر میگه باید به وسیله ادمین ریجیستر بشه راه دوم رو تست می کنم خبرش رو همین جا می زارم متشکر
dr.pantagon
پنج شنبه 17 اردیبهشت 1388, 21:10 عصر
نه این کار هم فایده نداره و فقط می مونه همون run as admin
کسی راه حل نداره
Babak.Hassanpour
پنج شنبه 17 اردیبهشت 1388, 21:30 عصر
فکر کنم تنها راه ایجاد ستاپ واسه برنامه است.اینجوری توی ویستا ، همون اول که به برنامه اجازه نصب می دی ، تمام کامپوننت ها هم رجیستر میشن.
b3st.programmer
پنج شنبه 17 اردیبهشت 1388, 21:43 عصر
آره این مشکل منم هست.... این ویستا هرس آدم رو در میاره...برای درست کردن یه برنامه یک هفته الاف بودم...اگه میشه یه راه حل عملی بگید تا ما هم استفاده کنیم..:لبخندساده:
dr.pantagon
پنج شنبه 17 اردیبهشت 1388, 23:51 عصر
آخ گفتی ، آخه کل برنامه من یک 2 تا فایل است یک exe یک dll نمی خواستم setup درست کنم زیاد جالب نیست
اگه راه حل دیگه ای دارید لطفا بگید
dr.pantagon
جمعه 18 اردیبهشت 1388, 16:58 عصر
کسی چیزی نمی دونه ؟
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.