begin process at 2010 02 10 17:26:13
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > DÉMANDER AUTOMATIQUEMENT LES DROITS ADMINISTRATEUR POUR VOTRE APPLICATION

DÉMANDER AUTOMATIQUEMENT LES DROITS ADMINISTRATEUR POUR VOTRE APPLICATION


 Information sur la source

Note :
Aucune note
Catégorie :Sécurité Classé sous :administrateur, installation, registre, ocx, dll Niveau :Débutant Date de création :19/09/2009 Date de mise à jour :19/09/2009 11:58:25 Vu / téléchargé :2 675 / 479

Auteur : vicosta

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Sous XP ou Vista, si le contrôle de compte est actif ou si vous êtes en mode non-administrateur,
   vous devez d'abord avoir les droits pour modifier ou placer des fichiers dans le repertoire racinne, etc
   ainsi que des permissions pour écrire dans le registre à partir de HKEY_LOCAL_MACHINE entre autres,
   ainsi que les droits pour enregistrer vos OCX ou DLL dans des programmes d'installation.
Comme Visual Basic ne peut pas créer un éxecutable qui demandera automatiquement ces droits à l'utilisateur,
   la function suivante peut corriger cela.
Note: Il faut faire appel à cette function de préférence à l'initialisation du programme.
   ça marche dès que le projet est compilé (logiquement)



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

19 septembre 2009 11:58:25 :
Encore 1 fois, fautes d'orto

 Sources du même auteur

Source avec Zip Source avec une capture ALTERNATIVE À LA FUNCTION VBA OU VB REPLACE (JUSQU'À 10 FOI...
TRADUIRE DES GROS CHIFFRES EN LETTRES AVEC CORRECTION ORTOGR...
Source avec Zip Source avec une capture INTERCOMMUNICATION ENTRE APPLICATIONS SANS DLL, OCX NI SUBCL...
Source avec Zip Source avec une capture IDE EVAL (CALCULER AVEC TRÉS PEU DE CODE)
Source avec Zip Source avec une capture CONVERTIR DU TEXTE RTF EN CODE HTML

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) APPARTENANCE AUX GROUPES DE SÉCURITÉ par legranche
Source avec Zip Source avec une capture Source .NET (Dotnet) REMOTE KEYLOGGER par elguevel
Source avec Zip PETITE IMPLEMENTATION DE L'ALGO SERVANT AU CRYPTAGE RSA par ccgousset
Source avec Zip SAUVEGARDES FICHIERS par claude440
Source avec Zip Source avec une capture VEROUX PC AVEC API par Galactus13

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture OCX REGISTRE par gta126
Source avec Zip Source avec une capture Source .NET (Dotnet) MENU CONTEXTUEL par Le Pivert
Source avec Zip Source avec une capture VISIONNEUR PROJET VBP par pape0
Source avec Zip ENREGISTREMENT FICHIERS ACTIVEX .OCX ET .DLL par mimiZanzan
Source avec Zip Source avec une capture ENREGISTREMENT DE COMPOSANTS POUR WINDOWS (DLL, OCX) par Platon

Commentaires et avis

Commentaire de PCPT le 19/09/2009 12:57:50 administrateur CS

salut,

pas testé mais il y a au moins 2 choses à modifier :

* ne pas exécuter la fonction (quitter) si le programme n'est pas compilé. pour çà tu peux tester le mode de l'application :
http://www.codyx.org/snippet_savoir-si-on-est-dans-ide_44.aspx#194
plus approprié que de tester len(dir(chemin))

* tu testes l'écriture de "C:\tmptest123test123.tmp". rien ne dit que la partition C existe. passe plutôt par la création d'un fichier dans TEMP, soit de la même manière avec un nom de fichier fixe :
http://www.codyx.org/snippet_recuperer-chemin-temp_772.aspx#2291
soit par un fichier TMP :
http://www.codyx.org/snippet_generer-nom-fichier-temporaire-unique_619.aspx#1876


ps :
if instr(...) then 'SI VRAI => RIEN
else 'SINON => ACTION
TON_CODE

pas besoin de tester de cette manière et de ne rien faire
if intr(...) = 0 then
TON_CODE


++

Commentaire de vicosta le 19/09/2009 14:56:28

@PCPT La function peut accepter son propre programme compilé, ou n'importe quel autre application, un install.exe par exemple. Pour lancer une autre application, ce n'est pas nécessaire de vérifier de si on est sur IDE ou pas.
La création d'un fichier TEMP dont le nom est donné par l'API GetTempFileName, ne permet pas de vérifier si on a le droit d'écrire sur la racinne de C:\. Par contre, on sait à l'avance qu'on a le droit d'écrire sur le fichier dont le nom a été donné par cette API. Ce n'est pas le but.
A la place d'écrire sur un fichier pour faire des testes, on pouvait écrire quelque part sur HKEY_LOCAL_MACHINE, et tester la valeur.

T'as bien raison quant à IF THEN ELSE, j'ai du supprimer deux lignes de code superflues après THEN pour simplifier la fonction. J'ai au moins laissé le comentaire.

En tout cas, merci pour les comentaires,

Commentaire de PCPT le 19/09/2009 16:14:19 administrateur CS

exact pour le 3e lien, donc il vaudrait mieux passer par le %TEMP%\blabla.tmp (2e lien) qui nous indiquera si on a le droit "d'écriture" tout court (et non tester sur un drive qui peut ne pas exister)

à savoir que dans tous les cas on peut avoir des droits dans certains dossiers et pas dans d'autres malgré une application démarrée en mode administrateur

bonne continuation

Commentaire de vicosta le 19/09/2009 22:57:50

Exacte, sous Vista, on peut écrire sur le repertoire C:\Users\(utilisateur actuel)\AppData\Local\Temp et autres à partir de C:\Users\(utilisateur actuel) sans aucun droit administrateur, ce que ne permet pas de tester si on a tous les droits administrateur. Par contre, sur c:\Program Files ou sur C:\ on peut faire le teste.
Comme il peut avoir du monde qui a installé Windows sur un autre lecteur (D:\, E:\, jamais vu) je crois que j'aurais mieux temps d'employer l'Api GetSystemDirectory et d'éssayer d'y écrire un fichier temporaire pour le test.
Sinon:
A$="Test" & Rnd * 6666
sKey$ = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
Call RegSetString(HKEY_LOCAL_MACHINE, sKey, A$, "ok")
Doevents
If RegGetString(HKEY_LOCAL_MACHINE, sKey, A$) = "ok" then
   'on a tous les droits administrateur disponibles
End If
Call RegDelValue(HKEY_LOCAL_MACHINE, sKey, A$)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

probléme d'installation [ par aslima ] bonjours,svp j'ai un grd probléme: j'ai développé une application en vb6 ou j'utilse MSHFlexgrid,CRviewer,crystal report.... lors de l'empaqutage sa p installation de l'instable d'un projet vb6 [ par ndaseraphin ] slt à tous.j'ai crée l'instable de mon projet sous vb6 et je n'arrive pas à l'installer sur les postes de mon réseau.Il me dit qu'il ne trouve pas les Droits sur la base de registre [ par abbas_f ] SalutJe ne suis pas l'administrateur d'un PC, je suis un utilisateur, et je n'ai pas le droit sur les clés : HKEY_CLASSES_ROOT , ni sur HKEY_LOCAL_MAC ScriptControl en DLL ? [ par Ahweb ] Bonjour !Je cherche actuellement a utiliser du VBScript dans une application en mode console. Le problème est donc que je ne peux pas utiliser l'OCX d Installation DTPicker sous excel [ par Elisa23 ] Bonsoir, J'ai un gros soucis ! :-( J'ai développé un petit formulaire en VBA sous excel au boulot. Je dois le présenter demain matin, mais en voulan Telnet.ocx et ScriptingTelnet.dll ne renvoient rien [ par mmiguel ] Bonjour,Je developpe une application sous VB2008. Mon but est d'envoyer des commandes Telnet et de lire les informations que je reçois.J'utilise un Oc enregistrement de ieframe [ par marco62118 ] bonsoir à tousinno setup m'a fait un script d'installation basé sur le fichier setup.lst issu de l'empaquetage de VB6.mais j'ai du me résoudre à ne pa Pb avec visual basic 2008 [ par davsamsyl ] bonjours, j'essaye de lancer un projet et vb me demander de le mettre a niveau j'accepte mais lors de la transformation il me dit : "Echec de la mise recherche des OCX(dll) [ par jihadd ] Salut. Voilà ça fait quelques jours que j'ai commencé à chercher pour faire un logiciel qui permet d'afficher une vidéo provenant d'une camera et en l Absence de fichier .OCX après l'installation de mon programme [ par gbegerco ] Voila j'ai utilisé Innosetup pour faire mon package d'installation.Mais j'ai remarqué que quand j'installe le programme sur un autre machine que la mi


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,905 sec (4)

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