delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيف جلب قائمة البرامج الي تشتغل مع بدء الجهاز StartUp Program
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
كيف جلب قائمة البرامج الي تشتغل مع بدء الجهاز StartUp Program
حاولت بالريجستري و ما قدرت خبرة ضعيفة لأن القيم لا تظهر باسم معين بل باسماء أخرى (اسم البرنامج و مساره)
و ايضا ملاحظة بعض البرامج الاخرى تذهب الى مجلد StartUp و تعمل اختصار يعني تكون على شكل .lnk
و شكرا لكم
PHP كود :
var
  
MyList: TStringList;
  
MyRegistry: TRegistry;
  
i: Integer;
  
Str: string; 

PHP كود :
MyRegistry:=TRegistry.Create;
  
MyList:=TStringList.Create;
  
with MyRegistry do
  
begin
    RootKey
:=HKEY_LOCAL_MACHINE;
    if 
OpenKey('Software\Microsoft\Windows\CurrentVersion\Uninstall',False)=True then GetKeyNames(MyList);
    
CloseKey;

    for 
i:=0 to MyList.Count-1 do
    
begin
      RootKey
:=HKEY_LOCAL_MACHINE;
      
OpenKey(
        
'Software\Microsoft\Windows\CurrentVersion\Uninstall\'+
        MyList[i], 
        False);
      Str:=ReadString('
DisplayName');
      if Str<>'' then
        sListBox1.Items.Add(ReadString('
DisplayName'));
      CloseKey;
    end;
    sStatusBar1.Panels[0].Text:='
You have : '+IntToStr(MyList.Count) +' Program installed !'
  end; 
شكرا لك أخي لكن StartUp Program
Unistall سهل اما StartUp لم أعرف كيف أجلب كل القيم
damax2010 كتب :شكرا لك أخي لكن startup program
unistall سهل اما startup لم أعرف كيف أجلب كل القيم

اسف لم اقرا السؤال جيد
غير المسار فقط
sListBox1.Items.Add(ReadString('DisplayName'));

DisplayName غير موجودة :p
DAMAX2010 كتب :sListBox1.Items.Add(ReadString('DisplayName'));

DisplayName غير موجودة :p
PHP كود :
procedure TForm1.FormCreate(Sender: TObject);
var
  
MyList: TStringList;
  
MyRegistry: TRegistry;
  
i: Integer;
 
begin
  MyRegistry
:=TRegistry.Create;
  
MyList:=TStringList.Create;
  
with MyRegistry do
  
begin
    
//RootKey:=HKEY_CURRENT_USER;
    
RootKey:=HKEY_LOCAL_MACHINE;
    try
    if 
OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run',False)=True then GetValueNames(MyList);
    for 
i:=0 to MyList.Count-1 do
     
lst1.Items.Add(ReadString(MyList[i]));
     
stat1.Panels[0].Text:='You have : '+IntToStr(MyList.Count) +' Programs Run at Windows Startup ';

     finally
      
CloseKey;
       
MyList.Free;
       
end;

end;

end;
end. 
للعلم //RootKey:=HKEY_CURRENT_USER; توجد فيه برامج اخرى
بالتوفيق