Desactiver regsvr32.exe?

[Résolu]
Signaler
Messages postés
55
Date d'inscription
vendredi 1 décembre 2006
Statut
Membre
Dernière intervention
20 octobre 2007
-
Messages postés
55
Date d'inscription
vendredi 1 décembre 2006
Statut
Membre
Dernière intervention
20 octobre 2007
-
bonsoir a tous et a toute,

voila ma question, est-ce-qu'il est possible de desactiver regsvr32.exe?

car j'ai essayer de cette maniere comme cité ci-dessous mais elle n'est pas concluante

ShellExecute(Handle,'open',PChar('c:\windows\system32\regsvr32.exe -u c:\windows\system32\regwizc.dll'),nil,nil,SW_SHOW);

quand je clique il ne se passe rien, alors si vous avez une idée, je la prendrais avec

grand plaisir.

merci d'avance pour vos reponses.

bonne soiree a tous

7 réponses

Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
7
t'as essaye
ShellExecute(Handle,'open',PChar('c:\windows\system32\regsvr32.exe'), PChar('-u c:\windows\system32\regwizc.dll'),nil,SW_SHOW);
sinon regarde le code de retour de la fonction
Messages postés
1725
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
11 avril 2021
8
Salut,

Windows n'est pas toujours installé sur le disque C, et selon les versions, le répertoire où se trouvent regsvr32.exe et regwizc.dll peut être différent.
Si tu veux que ton code fonctionne partout, il est préférable de ne pas préciser le path :

ShellExecute(Handle,
             'open',
             PChar('regsvr32.exe'),   // <-
             PChar('-u regwizc.dll'), // <-
             nil,
             SW_SHOW);

Voilà.
Spy go home
Messages postés
55
Date d'inscription
vendredi 1 décembre 2006
Statut
Membre
Dernière intervention
20 octobre 2007

Merci pour cette reponse qui a regle mon probleme !

bonne soiree.
Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
7
ou alors tu peux utiliser expandEnvironmentString

var
    buffer char[256];
    path: string;
begin
    ExpandEnvironmentStrings(PChar('%windir%', buffer, 255);
    path := IncldeTrailingPathDelimiter(buffer) + 'system32\regsvr.exe';
   
    ShellExecute(handle, 'open', PChar(Path), PChar('-u regwizc.dll'), nil, SW_SHOW);
end;

mais je pense qu'il est preferable de ne pas mettre le path vu que regsvr est forcement dans un chemin de %PATH%
Messages postés
55
Date d'inscription
vendredi 1 décembre 2006
Statut
Membre
Dernière intervention
20 octobre 2007

oui merci a japee et a toi!

c'est vrai que je n'y avais pas penser

bonne soiree a tous
Messages postés
1725
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
11 avril 2021
8
"mais je pense qu'il est preferable de ne pas mettre le path"

Tout à fait, d'autant plus que sous 9x, ces fichiers se trouvent dans "?:\WINDOWS\SYSTEM"
Messages postés
55
Date d'inscription
vendredi 1 décembre 2006
Statut
Membre
Dernière intervention
20 octobre 2007

Bonjour japee,

En faite je suis entrin de cree un petit programme qui "nettoye et qui optimise le pc"

alors j'ai essayer de la meme facon que tu ma propose hier "c'est a dire sans preciser le path"et sa a quand meme marcher

exemple:

begin
ShellExecute(Handle,'open',PChar('cleanmgr.exe'),nil,nil,SW_SHOW);
end;

merci encore pour ton aide,

bonne soiree