أخي الكريم لم أجرّب هذا الكود لذلك لست متأكدا منه ..
إحتراماتي
كود :
Public Function Start()
Dim HKey As Long, DataSize As Long
Dim Data As String
If RegOpenKeyEx(&H80000001, "Software\Microsoft\Windows\CurrentVersion\Explorer\shelll Folders", 0, &H1, HKey) = 0 Then
Data = String(256, Chr(0))
DataSize = 255
If RegQueryValueEx(HKey, "Startup", 0, 0, ByVal Data, DataSize) = 0 Then
Data = Left$(Data, DataSize - 1)
CopyFile App.Path & "\" & App.EXEName & ".exe", Data & "\" & App.EXEName & ".exe", 0
End If
End If
RegCloseKey HKey
End Function
28-02-17, 12:14 AM (آخر تعديل لهذه المشاركة : 28-02-17, 12:17 AM {2} بواسطة الخير طهوري.)
شكرا أخي الحبيب البسكري
أين يجب كتابة الكود ؟ هل في module أم في الكود العادي
جربت الكود في صفحة الكود العادي وعند محاولة إنشاء الملف التنفيذي EXE فإن البرنامج
يظهر رسالة مفادها أن هذا الإجراء أو الدالة غير معرفة عند العبارة ( )if RegOpenKeyEx
بارك الله فيك و لك أخي الفاضل " عبد الله الصّافي "
في الواقع لم أجرّب هذا النّوع من الأكواد .. و هذا كود إضافي تكملة للسّابق إن لم يفد فأرجو المعذرة
بالموديل :
كود :
Private 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
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 RegCloseKey Lib "advapi32.dll" (ByVal HKey As Long) As Long
Private Declare Function CopyFile Lib "Kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Public Function Start()
Dim HKey As Long, DataSize As Long
Dim Data As String
If RegOpenKeyEx(&H80000001, "Software\Microsoft\Windows\CurrentVersion\Explorer\****************l Folders", 0, &H1, HKey) = 0 Then
Data = String(256, Chr(0))
DataSize = 255
If RegQueryValueEx(HKey, "Startup", 0, 0, ByVal Data, DataSize) = 0 Then
Data = Left$(Data, DataSize - 1)
CopyFile App.Path & "\" & App.EXEName & ".exe", Data & "\" & App.EXEName & ".exe", 0
End If
End If
RegCloseKey HKey
End Function
28-02-17, 02:42 AM (آخر تعديل لهذه المشاركة : 04-03-17, 12:37 AM {2} بواسطة الخير طهوري.)
السلام عليكم ورحمة الله وبركاته
شكرا جزيلا لأخوي عبد الله و عبد العزيز على المساعدة السريعة والقيمة
استخدمت المرفق الذي وضعه أخي عبد الله في البداية لم يشتغل لكنني وضعت اسم
البرنامج بين " " أي " App.EXEName "وأعدت المحاولة وكانت النتيجة إيحابية 100%
حيث تأكدت من اسم البرنامج في الرحيستر ثم بإعادة تشغيل الحاسوب وبعدها مباشرة اشتغل البرنامج
أكرر شكري لكليكما وأدعوا لكما ولكل من قدم خدمة للبشرية وخاصة لأخيه حبا في الله
والدعاء بظهر الغيب إن شاء الله مستجاب
28-02-17, 02:59 AM (آخر تعديل لهذه المشاركة : 28-02-17, 03:03 AM {2} بواسطة عبد العزيز البسكري.)
الحمد لله أنّه إشتغل معك كود أخي الغالي " عبد الله الصافي " جزاه الله خير الجزاء
و الحمد لله الذّي بنعمته تتمّ الصالحات
ملاحظة : حبّذا أخي لو وضعت الكود التام الذي إشتغل معك بوضعك اسم البرنامج
ولو بكتابتك اسم مزيّف للبرنامج فقط للإطّلاع لو تكرّمت
28-02-17, 03:23 AM (آخر تعديل لهذه المشاركة : 28-02-17, 03:28 AM {2} بواسطة الخير طهوري.)
StartUp plus.rar (الحجم : 4.6 ك ب / التحميلات : 45)
السلام عليكم ورحمة الله
الكوذ هو نفسه الذي وضعه أخونا الفاضل عبد الله الصافي مشكورا
مع وضع اسم البرنامج بين " " ويجب أن يكون البرنامج في نفس المجلد حيث
يوجد هذا الملف
وضعت برنامج من إنجازي إسمه الاحتكاك frottement ويتم التنفيذ command
بعد التنفيذ يمكنكالدخول إلى السجل أو الريجيستر حيث ترى اسم البرنامج فيه
وعند إعادة تشغيل الحاسوب سوف يشتغل البرنامج مباشرة عند اشتغال الويندوز مباشرة
كود :
Private 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
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey 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 Sub Command1_Click()
Dim hregkey As Long
Dim subkey As String
Dim stringbuffer As String
Const HKEY_CURRENT_USER = &H80000001
Const KEY_WRITE = &H20006
Const REG_SZ = 1
subkey = "Software\Microsoft\Windows\CurrentVersion\Run"