PDA

نسخه کامل مشاهده نسخه کامل : چطور ميشه يك كليد توي رجيستري ساخت؟



babak_beiknejat
16-08-2007, 23:31
راستش مي خوام از طريق رجيستري برنامم رو هنگام بالا اومدن ويندوز اجرا كنم اما vb دستور regcreatkey رو نميشناسه
لطفا راهنميي هاي لازم رو بيان كنيد (راستش من مبتدي هستم):41:

301
26-08-2007, 22:37
سالام بابک جان
برای اینکه تو رجستری کلیدی ایجاد کنی که هر وقت ویندوز بالا اومد برنامه خودت اجرا بشه
اول از همه یه ماجول بساز و توش برو کد زیر رو وارد کن
=======================
Public Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Const HKEY_CURRENT_USER = &H80000001
Public Const KEY_WRITE = &H20006
Public Const REG_SZ = 1
=====================
بعد تو قسمت form_load یا هر قسمتی که مورد نظرته کد زیر رو وارد کن تا کلید مورد نظرت ساخته بشه

=====================
Dim hregkey As Long
Dim subkey As String
Dim stringbuffer As String
subkey = "software\microsoft\windows\currentversion\run"
retval = RegOpenKeyEx(HKEY_CURRENT_USER, subkey, 0, KEY_WRITE, hregkey)
If retval <> 0 Then
Debug.Print "Can't open the subkey"
Exit Sub
End If
stringbuffer = App.Path & "\" & App.EXEName & ".exe" & vbNullChar
retval = RegSetValueEx(hregkey, "My App", 0, REG_SZ, ByVal stringbuffer, Len(stringbuffer))

RegCloseKey hregkey

==================
کلمه my app نام کلیدی هستش که می خوای تو رجستری ساخته بشه.
در ضمن این کلید تو قسمت software\microsoft\windows\currentversion\run ساخته میشه.
موفق باشی
یا علی:thumbsup: