الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل أختصار لبرنامج في قائمة بدء التشغيل.

بدأه FastCode2010 في 31 يناير 2009 · 12 رد · 1,508 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاتة

اخواني الاعزاء ...انا مبتديء في لغة السي بلاس

وفي صدد عمل برنامجي الاول ولكن واجهتني مشكله

ابحث عن طريقة جعل البرنامج في قائمه بدء التشغيل التلاقيء عند تشغيل الويندوز

وبدون استخدام طريقة الرجستري ...كيف هي طريقة عمل اختصار في مجلد الستارت اب ؟؟

مع التكرم بذكر مثال مبسط ...ولكم جزيل الشكر

تحياتي

#2

السلام عليكم .

تستطيع عمل ملف باتش يعمل على تشغيل برنامجك مع بدء التشغيل .

هذا مثال يفترض انك تريد تشغيل الآله الحاسبة مع بدء التشغيل.

الكود ينشي ملف باتش في قائمة بدء التشغيل وهذا الباتش يشغل الآله الحاسبة.

تاكد من مسار الآله الحاسبه لديك ومن مسار مجلد بدء التشغيل.

  1. #include<iostream>
  2. #include<fstream>
  3. using namespace std;
  4. int main()
  5. {
  6. ofstream mfile;
  7. mfile.open("C:UsersfahadAppDataRoamingMicrosoftWindowsStart MenuProgramsStart
    upMyProgramRun.bat");
  8. mfile<<"@echo offn";
  9. mfile<<"C:WindowsSystem32calc.exen";
  10. mfile.close();
  11. return 0;
  12. }
  13.  

tvquran_6.gif

#3
فهدالشلوي كتب:
السلام عليكم .

تستطيع عمل ملف باتش يعمل على تشغيل برنامجك مع بدء التشغيل .

هذا مثال يفترض انك تريد تشغيل الآله الحاسبة مع بدء التشغيل.

الكود ينشي ملف باتش في قائمة بدء التشغيل وهذا الباتش يشغل الآله الحاسبة.

تاكد من مسار الآله الحاسبه لديك ومن مسار مجلد بدء التشغيل.

  1. #include<iostream> #include<fstream> using namespace std; int main() { ofstream mfile; mfile.op
    en("C:UsersfahadAppDataRoamingMicrosoftWindowsStart MenuProgramsStartupMyProgramRun.bat"); mfil
    e<<"@echo offn"; mfile<<"C:WindowsSystem32calc.exen"; mfile.close(); return 0; }
  2.  
  3.  

أشكرك ياستاذ فهد ...ولكن هذه الطريقة تشغل ملف الباتش كذالك

بيكون ملفين شغالين عند بدء التشغيل الحاسبه و cmd

ممكن الله يخليك مثال بطريقة IShellLink

لاني حاولت اطبقها بس يعطني كثير اخطاء من ناحية الانكلود

وجزاك الله خيرا

http://www.intelliproject.net/articles/sho...hortcut_cpp_com

http://www.codeproject.com/KB/shell/create_shortcut.aspx

تم تعديل هذه المشاركة بواسطة FastCode2010 في 1 فبراير 2009 في 09:15

#4

وهذا مثال يعمل اختصار في بء التشغيل.

  1. #include<windows.h>
  2. #include<shobjidl.h>
  3. #include<initguid.h>
  4.  
  5.  
  6. HRESULT CreateLink(LPCWSTR lpszPathObj, LPCSTR lpszPathLink, LPCSTR lpszDesc);
  7.  
  8. int main ()
  9. {
  10. HRESULT hres = CreateLink(L"C:WindowsSystem32calc.exe",
  11. "C:UsersfahadAppDataRoamingMicrosoftWindowsStart MenuProgramsStartupmycal
    c.lnk",
  12. "Calcualtor" );
  13.  
  14.  
  15. return 0;
  16. }
  17. HRESULT CreateLink(LPCWSTR lpszPathObj, LPCSTR lpszPathLink, LPCSTR lpszDesc)
  18. {
  19. HRESULT hres;
  20. IShellLink *psl ;
  21. CoInitialize (NULL);
  22.  
  23. hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLinkW, (LPVO
    ID*)&psl);
  24. if (SUCCEEDED(hres))
  25. {
  26. IPersistFile* ppf;
  27. hres = psl->SetPath(lpszPathObj);
  28. hres = psl->SetDescription(LPCWSTR(lpszDesc));
  29. hres = psl->QueryInterface(IID_IPersistFile, (LPVOID*)&ppf);
  30. if (SUCCEEDED(hres))
  31. {
  32. WCHAR wsz[MAX_PATH];
  33. hres = MultiByteToWideChar(CP_ACP, 0, LPCSTR(lpszPathLink), -1, wsz, MAX_PATH);
  34. hres = ppf->Save(wsz, true);
  35. ppf->Release();
  36. }
  37. psl->Release();
  38. }
  39.  
  40. return hres;
  41. }
  42.  

tvquran_6.gif

#5

استاذ فهد اشكرك ولكن واجهتني هذه الاخطاء

الملفات المحلقة

#include<windows.h>

#include <shlobj.h>

#include<initguid.h>

الاخطاء الكومبايل Dev c++

In function `HRESULT CreateLink(const WCHAR*, const CHAR*, const CHAR*)':

28: error: no matching function for call to `IShellLinkA::SetPath(const WCHAR*&)'

note: candidates are: virtual HRESULT IShellLinkA::SetPath(const CHAR*)

29: error: no matching function for call to `IShellLinkA::SetDescription(const WCHAR*)'

note: candidates are: virtual HRESULT IShellLinkA::SetDescription(const CHAR*)

Execution terminated

تم تعديل هذه المشاركة بواسطة FastCode2010 في 1 فبراير 2009 في 13:52

#6

نعم الكود لن يعمل مع mingw يحتاج تعديل.

عملت البرنامج على vc2008

tvquran_6.gif

#7

طيب تستطيع الاستغنا عن عمل الاختصار بعمل برنامج صغير تضيفة الي قائمة بداء التشغيل.

tvquran_6.gif

#8

هل تقصد اعمل كوبي copy للبرنامج في مجلد الستارتب اب ؟؟

حاولت ولكن الانتي فيروس يعتبره فيروس

تم تعديل هذه المشاركة بواسطة FastCode2010 في 1 فبراير 2009 في 14:07

#9

برنامج صغير تضعه في بدء التشغيل مثل هذا.

  1. #include<windows.h>
  2. int main()
  3. {
  4. WinExec("C:WindowsSystem32calc.exe",1);
  5. }
  6.  

tvquran_6.gif

#10

المشكله ماهي طريقه وضعه في مجلد الستارت اب الغير يدويه....عملية الكوبي الملف لهذا المجلد تعتبرها برامج الانتي فيروس فيروس.

#11

طيب جرب هذا الكود:

  1. #include<windows.h>
  2. #include<stdio.h>
  3. int main()
  4. {
  5. FILE* temp;
  6. char* source="sLinkFile ="C:UsersfahadAppDataRoamingMicrosoftWindowsStart Menu
    ProgramsStartupMyShortcut.LNK"n Set oWS = WScript.CreateObject("WScript.Shell")n S
    et oLink = oWS.CreateShortcut(sLinkFile)n oLink.TargetPath = "C:WindowsSystem32calc.E
    XE"n oLink.Arguments = ""n oLink.Description = "MyProgram"n oLink.IconLocation =
    "C:WindowsSystem32calc.EXE,0"n oLink.WindowStyle = "1"n oLink.WorkingDirectory
    = "C:WindowsSystem32"n oLink.Saven";
  7. temp=fopen("c:ggtmp.vbs","w");
  8. fprintf(temp,source);
  9. fclose(temp);
  10. WinExec("C:WindowsSystem32wscript.exe c:ggtmp.vbs",1);
  11. }
  12.  

tvquran_6.gif

#12

ظهر لي هذا الخطا في الويندوز

There is no script engine for file extenision "exe

اسف اخي تعبت معي :)

#13

في السطر 7 غير اسم المجلد gg الي مجلد موجود .

وفي السطر 10 ايضا

tvquran_6.gif

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…