ببینم شما مبتدی ها رو هم تو بازیتون راه میدین؟؟؟
نكته ويژوالي :
اینم یه نکته ی کوچولو (البته در حد خودم):
این که میخوام بگم شاید زیاد هم به نکته شبیه نباشه!!!
کپی برنامه در استارت آپ ویندوز به طوری که Msconfig متوجه نشود.
کد ماژول:
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_CURRENT_USER = &H80000001
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Private 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
Private Declare Sub ExitProcess Lib "kernel32" (ByVal uExitCode As Long)
Private Declare Function GetExitCodeProcess Lib "kernel32" (ByVal hProcess As Long, lpExitCode As Long) As Long
Public Const REG_SZ = 1
Public Const REG_DWORD = 4
Public Function GetString(hKey As Long, StrPath As String, strValue As String)
Dim Keyhand As Long
Dim datatype As Long
Dim lResult As Long
Dim strBuf As String
Dim lDataBufSize As Long
Dim intZeroPos As Integer
r = RegOpenKey(hKey, StrPath, Keyhand)
lResult = RegQueryValueEx(Keyhand, strValue, 0&, lValueType, ByVal 0&, lDataBufSize)
If lValueType = REG_SZ Then
strBuf = String(lDataBufSize, " ")
lResult = RegQueryValueEx(Keyhand, strValue, 0&, 0&, ByVal strBuf, lDataBufSize)
If lResult = ERROR_SUCCESS Then
intZeroPos = InStr(strBuf, Chr$(0))
If intZeroPos > 0 Then
GetString = Left$(strBuf, intZeroPos - 1)
Else
GetString = strBuf
End If
End If
End If
End Function
Public Sub SaveString(hKey As Long, StrPath As String, strValue As String, strdata As String)
Dim Keyhand As Long
Dim r As Long
r = RegCreateKey(hKey, StrPath, Keyhand)
r = RegSetValueEx(Keyhand, strValue, 0, REG_SZ, ByVal strdata, Len(strdata))
r = RegCloseKey(Keyhand)
End Sub
Public Sub Delete_String(hKey As Long, StrPath As String, strValue As String)
Dim Keyhand As Long
r = RegOpenKey(hKey, StrPath, Keyhand)
RegDeleteValue Keyhand, strValue
End Sub
اینم از کد نمونه:
M1.SaveString HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", Key Name," explorer.exe File name.exe"
من بیشتر سوال دارم تا نکته
الان جند تا رو که یادم هست رو می پرسم نفر بعدی دست خالی نیاد.
-توابع مربوط به تبدیل مبنا (2و10و16)
-یک کد برای خالی کردن استارت آپ ویندوز (ضروری)
-End Process کردن یک برنامه (غیر از روش استفاده از Task Kill )
فکر کنم نفر بعدی آدم خیر خواهی باشه