تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 5 از 5

نام تاپيک: قرار دادن برنامه در استارت آپ

  1. #1
    داره خودمونی میشه hamidreza.sn's Avatar
    تاريخ عضويت
    Jun 2009
    محل سكونت
    مینودشت
    پست ها
    24

    12 قرار دادن برنامه در استارت آپ

    قرار دادن برنامه در 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 Settings\All Users\Start Menu\Programs\Startup\"
    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("Software\Microsoft\Windows\CurrentVers ion\Run", ProgramName, FileToRun)
    End Sub

    Private Sub RemoveFromRun(ProgramName As String)
    Call DeleteValue("Software\Microsoft\Windows\CurrentVer sion\Run", 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


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

  2. 2 کاربر از hamidreza.sn بخاطر این مطلب مفید تشکر کرده اند


  3. #2
    در آغاز فعالیت
    تاريخ عضويت
    Jul 2009
    محل سكونت
    بیرجند خراسان جنوبی
    پست ها
    12

    پيش فرض

    ممنون دادا به درد بخور بود

  4. #3
    پروفشنال pedramh's Avatar
    تاريخ عضويت
    Jul 2009
    پست ها
    933

    پيش فرض

    سلام دوست عزیز!
    لطفا از این به بعد متن های انگلیسی رو توی تگ CODE قرار بدین که این طوری به هم نریزه!

  5. #4
    آخر فروم باز arashbi2's Avatar
    تاريخ عضويت
    Aug 2006
    محل سكونت
    Unknown!!!
    پست ها
    1,654

    پيش فرض

    خیلی ممنون عزیز برای ویروس نویسیم خیلی کمک کرد

  6. #5
    داره خودمونی میشه saman.killer's Avatar
    تاريخ عضويت
    Aug 2009
    محل سكونت
    شیراز
    پست ها
    93

    14

    چه جوری مسیر برنامه ها رو از طریق System Configuration Utility پیدا کنم

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •