سورس برنامه نویسی ، آموزش ، قالب وردپرس ، اسکریپت ، گرافیک ، آموزش کاربردی، دانلود رایگان ، قالب

تبليغات شما در داده باران
تبلیغات در داده باران

مجموعه سورس کدهای ویژوالبیسیک ۶ قسمت ۱۸

مجموعه سورس کدهای ویژوالبیسیک ۶ قسمت ۱۸Reviewed by داده باران on Oct 2Rating:

جهت مطالعه و دسترسی به سورس ها به ادامه مطلب مراجعه نمائید

قرار دادن برنامه در Startup

برای اینکار دو روش وجود داره؛ روش اول اینه که برنامه رو در پوشه Startup کپی کنیم که روش جالبی نیستچون کاربر میتونه به اون پوشه به و فایل رو پاک کنه و امّا روش دوّم (قابل توجّه ویروس نویسا) اینه که برنامه رو تو لیست برنامه های Startup در رجیستری ذخیره کنیم که روش مطمئن و بهتریه چون کاربر نمیدونه برنامه کجا قرار داره و از کجا اجرا میشه مگر اینکه از طریق رجیستری و یا برنامه System Configuration Utility (تایپ msconfig در Run ویندوز) متوجه مسیر برنامه بشه که خب خوشبختانه همه اینکارو بلد نیستن.

به ترتیب روش اول و بعد روش دوّم رو آموزش میدم. برای اجرای برنامه در Startup از طریق روش اول باید درایوی رو که ویندوز اونجا نصب شده و بدونید که من این کارو با توابع API انجام دادم. یک پروژه جدید باز کنید و کد زیر رو تو قسمت جنرال فرمتون کپی کنید :

Private Declare Function GetWindowsDirectory Lib “kernel32” Alias “GetWindowsDirectoryA” (ByVal lpBuffer As String, ByVal nSize As Long) As Long

Dim strSource As String, strDest As String

 

Private Sub Form_Load()

If App.PrevInstance = True Then End

strSource = App.path & IIf(Len(App.path) > 0, “”, Empty)

strSource = strSource & App.EXEName & “.exe”

strDest = WinDrive & “Documents and SettingsAll UsersStart MenuProgramsStartup”

FileCopy strSource, strDest & App.EXEName & “.exe”

End Sub

 

Private Function WinDrive() As String

Dim strDrive As String

strDrive = Space(500)

A = GetWindowsDirectory(strDrive, Len(strDrive))

strDrive = Left(strDrive, 3)

WinDrive = strDrive

End Function

 

حتما بخوانید  دانلود سورس تغییر تولتیپ برخی از قسمت های ویندوز

اگه برنامه رو اجرا کنید فایل اجرایی برنامه تو پوشه Startup کپی میشه و با هر بار بالا اومدن ویندوز برنامه شما هم اجرا میشه. ولی روش دوّم، برای اینکار باید توابعی رو تعریف کنیم که با رجیستری سر و کار دارن و من این کارو برای راحتی شما انجام دادم. یک پروژه جدید باز کنید و کد زیر رو تو قسمت جنرال فرمتون کپی کنید :

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 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 Function RegDeleteValue Lib “advapi32.dll” Alias “RegDeleteValueA” (ByVal hKey As Long, ByVal lpValueName As String) As Long

Private Declare Function RegCloseKey Lib “advapi32.dll” (ByVal hKey As Long) 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 Const HKEY_LOCAL_MACHINE = &H80000002

Private Const REG_SZ = 1

 

Dim strAppPath As String

Private Sub Command1_Click()

AddToRun App.Title, strAppPath

End Sub

 

Private Sub Command2_Click()

RemoveFromRun App.Title

End Sub

 

Private Sub Form_Load()

Command1.Caption = “Add to Run”

Command2.Caption = “Remove from Run”

strAppPath = IIf(Len(App.path) > 3, App.path & “”, App.path)

strAppPath = strAppPath & App.EXEName & “.exe”

End Sub

 

Private Sub AddToRun(ProgramName As String, FileToRun As String)

Call SaveString(“SoftwareMicrosoftWindowsCurrentVersionRun”, ProgramName, FileToRun)

End Sub

 

Private Sub RemoveFromRun(ProgramName As String)

Call DeleteValue(“SoftwareMicrosoftWindowsCurrentVersionRun”, ProgramName)

End Sub

 

حتما بخوانید  دانلود سورس اسکرول برای فرم ها

Private Sub SaveString(strPath As String, strValue As String, strdata As String)

Dim keyhand As Long

Dim r As Long

r = RegCreateKey(HKEY_LOCAL_MACHINE, strPath, keyhand)

r = RegSetValueEx(keyhand, strValue, 0, REG_SZ, ByVal strdata, Len(strdata))

r = RegCloseKey(keyhand)

End Sub

 

Private Function DeleteValue(ByVal strPath As String, ByVal strValue As String)

Dim keyhand As Long

Dim r As Long

r = RegOpenKey(HKEY_LOCAL_MACHINE, strPath, keyhand)

r = RegDeleteValue(keyhand, strValue)

r = RegCloseKey(keyhand)

End Function

 

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

لينك كوتاه اين مطلب : http://www.dadebaran.ir/?p=618

رمز فايل : DADEBARAN.IR




تبلیغات در داده باران
ارسال دیدگاه

قبل از نوشتن دیدگاه به نکات زیر توجه کنید:
    » نظراتی که با تایپ فارسی نباشند تایید نخواهند شد
    » نظرات تبلیغاتی اسپم محسوب میشوند و IP شخص مسدود خواهد شد.

پاسخ دهید

نکته: نظر شما در انتظار بررسی است و پس از تایید مدیریت در سایت نمایش داده میشود..