PDA

View Full Version : رجیستر کردن dll توسط برنامه



john smithair
دوشنبه 09 شهریور 1388, 14:46 عصر
سلام دوستان
من یه اکتیو ایکس از یکی از دوستان سایت برای برنامم گرفتم.این اکتیو ایکس نیاز به رجیستر داره
پس برنامه در هر کامپیوتری که قرار اجرا بشه بایداین اکتیو ایکس توش رجیستر شده باشه.
خوب من میخواستم بدونم.
آیا میشه یه dll رو هنگام نصب برنامه رجیستر کرد
و این که مثلا اگر تو فرم لودم بگم که اکتیو ایکس رو رجیستر کنه. برنامه اون وقت دیگه ایراد نمیگیره که اکتیو ایکس رجیستر نشده.
بالاخره چه کار کنم.

alimanam
دوشنبه 09 شهریور 1388, 16:58 عصر
سلام دوستان
من یه اکتیو ایکس از یکی از دوستان سایت برای برنامم گرفتم.این اکتیو ایکس نیاز به رجیستر داره
پس برنامه در هر کامپیوتری که قرار اجرا بشه بایداین اکتیو ایکس توش رجیستر شده باشه.
خوب من میخواستم بدونم.
آیا میشه یه dll رو هنگام نصب برنامه رجیستر کرد
و این که مثلا اگر تو فرم لودم بگم که اکتیو ایکس رو رجیستر کنه. برنامه اون وقت دیگه ایراد نمیگیره که اکتیو ایکس رجیستر نشده.
بالاخره چه کار کنم.

با سلام دوست عزیز

به صورت خصوصی واستون شرح دادم ولی باز اینجا میگم تا بقیه دوستانی هم به دردشون بخوره .

جواب سوالتون ( رجیستر کردن ocx در هنگام نصب برنامه ) :

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

1- یک پروژه جدید ( از نوع Setup ) به پروژه برنامه ات اضافه کن . ( البته می تونی به صورت مجزا هم ستاپ بسازی یعنی اینکه یه پروژه جدید ستاپ درست کنی و فایلهای مورد نیازت رو به اون اضافه کنی )

2- حالا فایلهای اصلی برنامه ات رو در بخش Application Folder اد کن . ( فایل exe - پایگاه داده البته اگه داری )
با این کار خود VS به صورت اتوماتیک تمامی فایلهای مورد نیاز فایل exe رو که شامل تمامی کامپونت های مورد استفاده درون اون هست رو اضافه می کنه .

حالا می رسیم به اصل ماجرا :

3- بر روی File system on target machine راست کلیک کن و از منوی باز شده گزینه Add special folder و در ادامه گزینه System Folder رو انتخاب کن با این کار یه پوشه به پوشه های File system on target machine اضافه میشه در بر روی اون پوشه ( system folder ) راست کلیک کن و از منوی باز شده به ترتیب add و file رو انتخاب کن حالا از کادر باز شده اون اکتیو ایکس رو که داری رو add کن .


* اگه بر روی اون فایل اکتیو ایکست کلیک کنی و در قسمت Properties هاش نگاه کنی در ویژگی Register می بینی که نوشته vsdrfCOMSelfReg و بقیه کار هم که مشخصه کافیه بر روی پروژه نصب راست کلیک کنی و Build رو کلیک کنی تا فایل نصب برنامه ات ساخته بشه ( در مسیر مثلاٌ Setup\Debug )

یا علی

vahid-oosta
جمعه 14 اسفند 1388, 22:53 عصر
من سوال دیگری در این رابطه دارم.
من با dll کانکشن ها یعنی DotRas برنامه ای رو نوشتم و به صورت exe درآوردم.
حالا این برنامه رو دادم به دوستم. خب مصلما دوستم تا این فایل dll رو نداشته باشه نمیتونه اجراش کنه.
من قبلا توی vb6 این رو حل کرده بودم.
اونجا میشد یه جورایی فایل dll رو جسبوند به برنامه تا دیگه احتیاجی به دادن dll نباشه.
آیا راه کاری هست تا بشه این برنامه رو توی سیستم های دیگه هم اجرا کرد (اجرا شدن برنامه بدون دادن این dll ) ؟؟؟؟

Alirezanet
جمعه 14 اسفند 1388, 23:22 عصر
برنامه رو نمیشه به صورت یک فایل در آورد مگربا استفاده از Setup ولی میتونی کنار برنامت بزاریش و توی خود فرم لود برنامت یا هر جایی که خواستی register کنیش ...
مثلا با این کد :

System.Diagnostics.Process.Start("RegSvr32", "Component.Dll")
یا کنارش یه فایل کوچیک برای رجیسترش درست کنی !

svs-vhs
شنبه 15 اسفند 1388, 19:58 عصر
یعنی اون حرکتی که توی VB6 انجام میدادیم دیگه نمیشه؟؟؟
البته اینی این دوسته مون میگه dll هست و اون رو برای OCX انجام میدادیم.
نمیدونم دوستان یادشون میاد یا نه. اما اینجا رو ببینید :
http://barnamenevis.org/forum/showpost.php?p=415687&postcount=12

نمیشه با dll هم یه همچین کاری کرد؟؟

Alirezanet
شنبه 15 اسفند 1388, 22:38 عصر
من از اول Vb6 کار خوبی نبودم ولی نمیتونم قطعا بگم که نمیشه ... باز شاید دوستان دیگه بتونن کمک کنن و ما هم استفاده میکنیم ..
موفق باشین

hossein-khoshseyar
جمعه 21 اسفند 1388, 10:28 صبح
ذوستان اگه کسی نحوه درست کردن پکیچ ست آپ رو کامل بلده لطف کنه و بگه تا ما ه یاد بگیریم
البته دوست خوبمون توی تاپیک بالا توضیح داد که دستش هم درد نکنه
اما می دونم که ست آآپ درست کردن جزیات خیلی بیشتر از این داره که می خوام اونا رو هم بدونم
مثلا اون فایل ست آپ فقط توی کامپوتری اجرا می شه که .net framework 3.5 داشته باشه
چه طوری می شه کاری کرد که دات نت فریم ورک به پکیچ ست آپ ما اضافه بشه تا اگه رو کامپیوتری نصب نبود اتوماتیک نصب بشه
ممنون

Alirezanet
جمعه 21 اسفند 1388, 19:51 عصر
خوی یه مقاله آموزشی توی این لینک هستش ... میتونی بخونیش کامل نیست ولی کاملا کار راه اندازه !
http://barnamenevis.org/forum/showthread.php?t=124483

موفق باشی