PDA

View Full Version : سوال: راهنمایی برای استفاده از ActiveX در برنامه



علیرضا حسن زاده
سه شنبه 14 دی 1389, 08:04 صبح
سلام
من یه ActiveX با VB ساختم و تو برنامه #C از او استفاده می کنم و مشکلی نداره
مشکل وقتی پیش میاد که تو ActiveX تغییراتی بدم و دوباره کامپایلش کنم انوقت برنامه #C دیگه کار نمیکنه
البته به نظرم می دونم مشکل از چیه : چون CLSID کنترل ActiveX تغییر میکنه برنامه #C دیگه نمیتونه اونو پیداکنه
الان یه راه حلی می خوام که برنامم به این روش وابسته نباشه ورژن های جدید ActiveX هم بدون نیاز به کامپایل مجدد کار کنه؟!:بوس:

m * h * d
سه شنبه 14 دی 1389, 11:30 صبح
سلام شما باید این activex رو ثبت نام کنید
برای این کار
Menu start>Run بروید و این گزینه رو بنویسید
regsvr32 و آدرس فایل به همراه نام آن

علیرضا حسن زاده
سه شنبه 14 دی 1389, 12:15 عصر
دوست عزیز اگه توجه کنی نوشتم که دارم استفاده می کنم و مشکلی هم نداره (یعنی کارهایی رو که شما گفتی رو بلدم)
مشکل تو زمانی هست که من تغییراتی رو تو ActiveX بدم و دوباره کامپایل و رجیسترش کنم اون موقع برنامه #C کار نمیکنه

علیرضا حسن زاده
چهارشنبه 15 دی 1389, 17:17 عصر
دوستان کسی راهی بلد نیست؟

m * h * d
پنج شنبه 16 دی 1389, 15:44 عصر
دوست عزیز من هم گفتم که اون فایلو از refrense پروزه ات حظف کن و دوباره اون فایل رو Add کن و سپس پروژه ات رو Rebildکن
تا درست بشه

علیرضا حسن زاده
پنج شنبه 16 دی 1389, 17:05 عصر
دوست عزیز من هم گفتم که اون فایلو از refrense پروزه ات حظف کن و دوباره اون فایل رو Add کن و سپس پروژه ات رو Rebildکن
اینو شما کی گفتین؟

ضمنا شما سوال رو فکر کنم درست نخوندین:

راه حلی می خوام که برنامم به این روش وابسته نباشه ورژن های جدید ActiveX هم بدون نیاز به کامپایل مجدد کار کنه؟!
بنده جمله بالا رو نوشتم که بر فرض مطرح کردن موضوع رفرنس بازم راهمنایی کردین که به موضوع شوال ربطی نداره

نهایتا از توجهی که کردین تشکر می کنم

kiosksoft
جمعه 17 دی 1389, 22:36 عصر
اینو شما کی گفتین؟

ضمنا شما سوال رو فکر کنم درست نخوندین:

بنده جمله بالا رو نوشتم که بر فرض مطرح کردن موضوع رفرنس بازم راهمنایی کردین که به موضوع شوال ربطی نداره

نهایتا از توجهی که کردین تشکر می کنم


دوست عزیز

1- دلیل اینکه ActiveX رو برای بار دوم کامپایل میکنی ، سپس در برنامه دوم از کار میفته اینه که در VB زمانی که یک پروژه ActiveX برای بار بعدی کامپایل میکنید ClassID مربوط به OCX ایجاد شده تغیر میکند به همین دلیل نیاز به register مجدد و یا تغییر برنامه دوم دارد.

2- برای اینکه همیشه برنامه دوم بدرستی کار کنه ، هنگام اجرای اولیه برنامه OCX رو یک بار از طریق کد نویسی Register نمایید.

موفق باشید