# Native Code > برنامه نویسی در 6 VB > ساختن Setup برای پروژه های VB6 >  فیلم آموزش پرتابل کردن پروژه vb6 (اضافه کردن کامپوننتهای استفاده شده به ریسورس و رجستر کردن آنها)

## سید حمید حق پرست

سلام علیکم
دیدم که تو انجمن خیلی از دوستان با رجستر کردن ocx و dll در سیستم کاربر مشکل دارند و به خاطر همین امروز این آموزش را گرفتم
در این آموزش پرتابل کردن برنامه های نوشته شده با ویژال بیسیک 6را یاد  خواهید گرفت . به صورتی که تمام ocx ها و dll های استفاده شده در پروژه  هایتان را در ریسورس قرار داده و با کد نویسی آنهارا خیلی راحت در پوشه  System32 کپی و سپس رجستری میکنید . با این روش دیگر احتیاج به ستاپ کردن  برنامه هایتان ندارید و نگران ارور دادن در سیستم کاربر نخواهید شد

*توجه : قبل از دانلود دوستانی که بلد نیستن ریسورس را به VB6 اضافه کنند به عکس حرکتی زیر توجه کنند و سپس فیلم و سورس را دانلود کنید*



*دانلود فیلم همراه سورس – برای دانلود کلیک کنید
حجم : 6.11 مگابایت
رمز فایل : barnamenevis.org*

موفق باشید


یا علی (ع)

----------


## aliman12

دوست عزیز این روش در همه ی ویندوزها جوابگو نیست و پرونده exe رو با Error مواجه میکند

----------


## سید حمید حق پرست

سلام علیکم
بنده این روش رو روی هم ویندوز xp هم seven هم vista امتحان کردم و بدون هیچ مشکلی برنامه اجرا شده
فقط روی 64 بیتی مشکل داره و بس
تمام برنامه های توی سایت خودم از این روش استفاده شده . من که بیخودی و الکی از این روش استفاده نمیکنم . اول امتحانش کردم
لطف کن بدون دلیل دیگه نگو کار نمیکنه و دیگران رو دلسرد نکن

موفق باشید
یا علی (ع)

----------


## ho3ein.3ven

سلام. اگه میشه بر روی ویندوز 64 بیتی هم آموزش بده .
ممنون

----------


## سید حمید حق پرست

سلام علیکم
بنده رو 64 بیتی کار نکردم . ولی حتما در اولین فرصت وقت ویندوز مجازی 64 بیتی نصب میکنم ببینم روشش چه جوری هست

موفق باشید
یا علی (ع)

----------


## M-NINJA

من فکر کنم تو 64 بین باید به جای( System32 ) از (SysWOW64) استفاده بشه

----------


## ho3ein282

> من فکر کنم تو 64 بین باید به جای( System32 ) از (SysWOW64) استفاده بشه


این کار رو هم انجام دادم ولی دوباره این ارور رو میده

----------


## IamOverlord

من قبلا Windows 7 64-bit داشتم و با VB6 و برنامه هاش هم می تونستم کار کنم...

----------


## ho3ein282

1-یعنی باید در خود ویندوزهای 64 بیتی vb6 رو نصب کنم و بعد اقدام به کامپایل کردن کنم
2-آیا باید  نسخه 64 بیتی vb6 رو تهیه کنم یا نه

----------


## سید حمید حق پرست

سلام علیکم
با توجه به قولی که دادم در مورد رجستری کردن با این روش در ویندوزهای 64 بیتی این روش هم بعد چندین تست پیدا کردم(ببخشید به دلیل وقت نکردن یه کم دیر بفکرش افتادم و همین امشب تست کردم)
برای اینکار فقط کافیه طبق عکس زیر به جای Regsvr32 باید Regsvr64 بنویسیم همین :
windows64.png
به خاطر اینکه فقط فرقشون در همین دو عدد بود گفتم فیلمشو نگرفتم، اما اگر کسی متوجه نشت بگید تا فیلم بگیرم و بزارم.

موفق باشید


یا علی(ع)

----------


## سید حمید حق پرست

سلام علیکم
با توجه به اینکه به دلایلی وب سایت رو آفلاین کردم و دوستان درخواست لینک جدید کردند، پست اول ویرایش و لینک دانلود جدید جایگذاری شد.

یا علی (ع)

----------


## R.wiin

میشه اینم بگی که چطور بفهمیم وین 64 یا 32؟؟
ممنون میشم

----------


## سید حمید حق پرست

سلام علیکم
دو نمونه :
MsgBox Environ("PROCESSOR_ARCHITECTURE")
یا :
Private Sub Command1_Click()
Dim ProcessorSet As Object
Dim OSInfo As Object
Set ProcessorSet = GetObject("Winmgmts:").ExecQuery("SELECT * FROM Win32_Processor")
For Each OSInfo In ProcessorSet
Text1.Text = OSInfo.AddressWidth
Next
End Sub
موفق باشید.

یا علی (ع)

----------


## R.wiin

مرسی.
یچیز دیگه رجیستر کردن تو ویندوز 8 فرق داره؟
هرکاری میکنم خطا میده

----------


## سید حمید حق پرست

سلام علیکم
باید Run as administrator اجرا کنید تا رجیستر بشه
موفق باشید.

یا علی (ع)

----------


## R.wiin

خب اگه کاربر Run as administrator نزد چی؟
یا اومدیم یکی بود ک تازه با کامپیوتر آشنا شده!!
ندونه اصلا این گزینه چی هست!
اون موقع چه کنم؟

----------


## سید حمید حق پرست

سلام علیکم
برای اینکار برنامه توسط یک برنامه دیگه با دستور مثل دستور زیر اجرا کنید :
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Const SW_SHOWNORMAL = 1

Private Sub Command1_Click()
ShellExecute 0, "runas", "C:\Users\Hamidelectronic\Desktop\Project1.exe  ", Command & "/admin", vbNullString, SW_SHOWNORMAL
End Sub 
موفق باشید.
یا علی (ع)

----------


## hosein3000

نمیشه یه فایل bat یا چیز دیگه ای درست کنیم که کاربر فقط با کلیک روی اون بتونه براحتی فایل های مورد نظرشو رجیستر کنه؟راهنمایی کنین لطفا

----------


## سید حمید حق پرست

سلام علیکم
میشه اما باید فایلهای ocx و dll رو کنار برنامه بزارید و اینطوری راحتتر نمیشه که و مجبور هستید فایل ستاپ بسازید (البته بعضی ستاب سازها خودشون اینکارو انجام میدن) و به کاربرهایی که اصلا نمیدونند اون فایل .bat چیه توضیح بدید و در بعضی مواقع هم به مشکل میخورند و ...
با کد زیر در فایل .bat اینکار میتونید انجام بدید :
regsvr32 name.ocx
موفق باشید.

یا علی (ع)

----------


## عیسی بهشتی

با عرض سلام  خدمت شما وتمامی دوستان 
با احترام بعرض میرسانم که بنده از همه راههای پیش نهادی استفاده بردم بر روی 2 لب تاب و یک سیستم که هر سه ویندوز 7 32 سرویس پک 1  دارند در تمام موارد پیام (فایل قابل ثبت نیست ) میدهند . حتی از نرم افزار هایی مثل dllregsvr و   Easy DLL_OCX Register استفاده کردم  و همواره همان پیام نصیب شد .
این هم یک تجربه است شما امتحان کردید ونتیجه هم گرفتید صحیح و بنده هم سعی کردم ولی نتیجه حاصل نشد . اگر راهی برای مشکل امثال بنده یافتید بفرمایید دعاگویتان هستم.

----------


## کاکرودی

سلام دوست عزیز ، آیا نرم افزاری هست غیر نرم افزارهای ستاب ساز که dll های مورد نیاز برناممونونمایش بده ؟

----------

