begin process at 2010 02 10 01:02:57
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Système

 > RÉCUPÉRER LE KBID DES PATCHS CORRECTIFS INSTALLÉS SUR UNE MACHINE NT

RÉCUPÉRER LE KBID DES PATCHS CORRECTIFS INSTALLÉS SUR UNE MACHINE NT


 Description

Permet de détecter rapidement si un patch a oui ou non besoin d'être installé. Par extension, sachez contre quoi vous êtes protégés. A défaut, contre quoi vous devez blinder votre PC.

Les KB apparaissent en guise d'informations de désinstallation. Si Windows "masque" ces modules, ici, je les récupère.

Pour plus d'information sur un patch N°WXYZ, regardez le lien:
http://support.microsoft.com?kbid=WXYZ

Source

  • uses Classes, Registry;
  • procedure GetKBid(KBList:TStrings; Simplified:boolean);
  • function IDK(Chain:string):boolean;
  • var idx : integer;
  • begin
  • Result:=true;
  • for idx:=1 to Length(Chain) do
  • Result:=Result and (Chain[idx] in ['0'..'9']);
  • end;
  • var i : integer;
  • begin
  • KBList.Clear;
  • with TRegistry.Create do
  • try
  • RootKey:=HKEY_LOCAL_MACHINE;
  • if OpenKey('Software\Microsoft\Windows\CurrentVersion\Uninstall\',false) then
  • begin
  • GetKeyNames(KBList);
  • for i:=KBList.Count-1 downto 0 do
  • if ((UpperCase(Copy(KBList[i],1,2))<>'KB') or (not IDK(Copy(KBList[i],3,Length(KBList[i]))))) then
  • KBList.Delete(i);
  • CloseKey;
  • end;
  • if Simplified then
  • for i:=0 to KBList.Count-1 do
  • KBList[i]:=Copy(KBList[i],3,Length(KBList[i]));
  • finally
  • Free;
  • end;
  • end;
  • procedure TForm1.FormCreate(Sender: TObject);
  • begin
  • GetKBid(ListBox1.Items,true);
  • ListBox1.Items.Sort;
  • end;
uses Classes, Registry;

  procedure GetKBid(KBList:TStrings; Simplified:boolean);
    function IDK(Chain:string):boolean;
    var idx : integer;
    begin
      Result:=true;
      for idx:=1 to Length(Chain) do
        Result:=Result and (Chain[idx] in ['0'..'9']);
    end;
  var i : integer;
  begin
    KBList.Clear;
    with TRegistry.Create do
      try
        RootKey:=HKEY_LOCAL_MACHINE;
        if OpenKey('Software\Microsoft\Windows\CurrentVersion\Uninstall\',false) then
          begin
            GetKeyNames(KBList);
            for i:=KBList.Count-1 downto 0 do
              if ((UpperCase(Copy(KBList[i],1,2))<>'KB') or (not IDK(Copy(KBList[i],3,Length(KBList[i]))))) then
                KBList.Delete(i);
            CloseKey;
          end;
        if Simplified then
          for i:=0 to KBList.Count-1 do
            KBList[i]:=Copy(KBList[i],3,Length(KBList[i]));
      finally
        Free;
      end;
  end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  GetKBid(ListBox1.Items,true);
  ListBox1.Items.Sort;
end;

 Conclusion

Vous pouvez toujours aller visiter http://altert.family.free.fr/


 Sources du même auteur

Source avec Zip INFORMATIONS POUSSÉES SUR UNE PAGE D'UN TWEBBROWSER
Source avec Zip CORRECTEUR ORTHOGRAPHIQUE EN DIRECT
CODE DE HAMMING (4,8) : TRANSMISSION DE DONNÉES SANS ERREUR ...
MODIFIER L'HORLOGE DU SYSTÈME D'EXPLOITATION
Source avec Zip WRP - WEB RADIO PLAYER

 Sources de la même categorie

Source avec Zip Source avec une capture GLIBWMI VCL COMPONENT LIBRARY 1.6B par Neftali
Source avec Zip Source avec une capture UNITÉ DE SUPPORT VISTA par Bacterius
Source avec Zip Source avec une capture NETTOYEUR AUTOMATIQUE DE VOS DISQUES par diglas
Source avec Zip Source avec une capture LES VALUE'S FADERS par blueperfect
Source avec Zip Source avec une capture COUNTERS, UNITÉ DE CALCUL DE PERFORMANCE par Bacterius

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture PATCHMAKER (GÉNÉRATION DE PATCHS : 7KO MINI NON PACKE, 15,5K... par PoulpHunter
Source avec Zip DONGLE USB, UTILISATION D'UNE MEMFLASH POUR PROTÉGER UN PROG... par rylryl
Source avec Zip PATCHEUR SOUS FORME DE LOADER. par DelphiCool

Commentaires et avis

Commentaire de hendrix le 02/11/2005 13:57:13

Je pense qu'il serait mieux de lister le contenu de la clé hotfix... car tous les patchs ne sont pas toujours désinstallables (ceci dit, ils ne tracent sans doute pas toujours tous dans la clé hotfix non plus... :-) ).

Commentaire de grandvizir le 18/12/2005 18:20:57

Hendrix> J'ai regardé ton HotFix et ça n'apporte rien de plus. Enfin presque... uniquement le KB du Windows Genuine Advance en plus. Sinon c'est vraiment pas mal, car HotFix donne des informations complémentaires. Mais elle en donne trop. Ce qui requierait des vérifications en plus pour extraire seulement les KB installés (cf. la valeur IsInstalled de chaque sous-clé).

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Detecter touches du clavier [ par sebrs1 ] salutj'ai un ptit probleme en delphi en esperant que vous pourrez m'aidersavez vous comment détécter les touche du claviers appuyées depuis n'importe Detecter et empecher une erreur de se produire [ par Millenius ] Voila mon prbJ'utilise un protocole UDP pour interoger des serveurs distants. Ils me répondent, et j'affiche le résultat. Jusqu'a la pas de prble seul detecter connexion internet [ par eedy31 ] salut a tous!j'ai juste une petite question:quelqu'un saurait t'il comment je pourrait faire pour savoir si la connexion internet est active ou pas av CS-Bar [ par koko ] Bon d'abord je ne sais pas ou je dois mettre ceci...alors, je n'arrive pas à installé la CS-Bar... il me dit que certain de mes fichiers sont perimés Detecter flash Player dans delphi ?? [ par Fredelphi ] Bonjour,J'ai fait une appli avec des swf.J'ai d'ailleurs utilisé les sources pour lire un swf sur ce site.Comment faire pour pouvoir détecter si le fl detecter une image [ par takwak ] Bonjour à tous ,je souhaiterais détecter sur l'écran si une image bmp (stockée sur disque ) est présente.Un exemple me serait bien utile.Merci d'avanc Patch pour Delphi 6 ne s'installe pas [ par Delphiprog ] J'ai téléchargé le dernier patch (mars 2003) pour Delphi 6 entreprise français et, à l'installation, il ne détecte pas correctement ma version de Delp Microsoft Agent [ par sisi231 ] SISI231J'ai besoin d'aide avec microsoft agent :comment assurer la portaébilité d'un programme microsoft agent car je l'ai installé sur mon ordinateur detecter un evenement souris via Tapplication? [ par mcguffin ] bonjour je cherche un moyen pour que mon application detecte que le bouton de la souris a été relaché.je ne veux pas passer par les composants, car je création d'un executable apartire de mon patch maker [ par MaXoR ] Merci pour vos message mais se que je veux dire sais que je sais pas comment faire pour que mon patch maker crée unexecutable pour aler modifier des b


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales