lundi 9 juillet 2012

Installation avec LiveUpdate d'un logiciel développé en Windev sur un domaine avec restriction des droits utilisateur


Testé sous Windows 7 Ultimate 64bits, Windows7 Professionel 32bits, Windows Serveur 2008 R2 avec Windev 17 & 18

En version 16 de Windev, quand on voulait créer une installation avec LiveUpdate sur un serveur de domaine avec restriction des droits pour les utilisateurs, la mise à jour demandait une élévation de privilège pour la mise à jour. Il fallait donc que l'administrateur passe sur chacune des machines à chaque mise à jour.

Ce problème pouvait être résolu en intégrant un manifeste indiquant que l'application n'a pas besoin de élévation de privilège pour fonctionner dans le projet WDSetup.

Méthode à suivre :

  • Ouvrez le projet WDSetup se trouvant dans [%Répertoire Windev%]\Exemples\Exemples complets\WDSetup.
  • Recréez l'exécutable en indiquant dans l'onglet sécurité, sur l'écran 1 : "Intégrer un manifeste pour Windows Vista et supérieur", et sur l'écran 2 : "Mon application ne nécessite pas de privilège particulier".
  • Dans votre projet, ouvrez WDInst. Dans "Paramètres de l'installation", "Options de l'installateur", indiquez comme installateur personnalisé le WDSetup.exe que vous venez de générer.



En Windev 17 et 18, cette manipulation n'est pas suffisante, il faut en plus corriger une ligne dans le code du projet WDSetup.

Méthode à suivre :

  • Ouvrez le projet WDSetup se trouvant dans [%Répertoire Windev%]\Exemples\Exemples complets\WDSetup.
  • Ouvrez la collection de procédures "Procedures_globales_de_WDSetup".
  • Ouvrez le code de la fonction "_bTraiteMiseAJour"
  • Indiquez Faux à la place de Vrai en troisième paramètre de l'appel de la fonction bCreateProcess.
  • Effectuez les manipulations indiquées plus haut.


mercredi 6 juin 2012

Supprimer un lecteur réseau

Testé sous Windows 7 Ultimate 64bits

Vous avez un lecteur réseau récalcitrant et vous n'arrivez pas à le supprimer. Voici 3 méthodes de suppression à essayer dans l'ordre et qui devraient résoudre votre problème.

Attention ! Si il y a un script exécuté au logon de l'utilisateur pour créer le lecteur réseau il est bien évident qu'au prochaine logon, le lecteur réseau réapparaîtra.


  • Méthode 1 :

- Faites un clic droit sur votre lecteur réseau.
- Choisissez Déconnecter.


  • Méthode 2 :

- Ouvrez une fenêtre de commande DOS.
- Tapez net use.
- La liste des connexions réseaux apparaît. Si une connexion avec la lettre du lecteur réseau se trouve dans la liste.
- Tapez net use [CheminDistant] /delete. Où [CheminDistant] doit être remplacé par le chemin indiqué dans la colonne "Distant" de la liste précédemment affichée.


  • Méthode 3 :

- Rendez-vous dans la base de registre.
- Allez dans HKEY_Current_User\Software\Microsoft\Windows\CurrentVersion\Explorer\Map Network Drive MRU.
- Supprimez la clé contenant comme donnée le chemin distant du lecteur que vous voulez supprimer et retenez son nom.
- Éditez la clé MRUListe en supprimant la lettre que vous avez retenu précédemment.
- Redémarrez l'ordinateur.

jeudi 19 janvier 2012

Créer un certificat numérique SSL auto-signé

Testé sous Windows 7 Ultimate 64bits

Acheter un certificat numérique peut s'avérer très onéreux. Pour les développeurs n'ayant pas la possibilité ou l'envie de dépenser de l'argent pour certifier une application, il leur est possible de créer leur propre certificat numérique auto-signé.

Si vous voulez acheter un certificat, vous pouvez vous renseigner chez Thawte (http://www.thawte.fr) ou chez Verisign (http://www.verisign.fr)

Pour ce faire il suffit de télécharger l'outil OpenSSL disponible sur le site suivant :
http://www.slproweb.com/products/Win32OpenSSL.html
Vous y trouverez une version 32bit et une version 64 bits. Vous l'installez et vous pouvez commencer à créer votre propre certificat

Ci-dessous vous trouverez la méthode de création du certificat. Les 3 étapes décrites sont nécessaires. Dans le cas de l'exemple les fichiers créés commencent par Test. Il sera donc créés 6 fichiers :
- TestCA.key
- TestCA.crt
- TestICA.key
- TestICA.csr
- TestICA.crt
- Test.pfx

Vous devrez donc remplacer ces noms et les autres informations demandées par ce qui vous convient.

1. Créer un certificat CA

Le certificat CA est le certificat à installer dans "autorités de certification racines de confiance"

Ouvrez une prompt DOS (Démarrer -> Exécuter -> cmd -> OK)
Rendez-vous dans le répertoire BIN d'OpenSSL.
Tapez OpenSSL + [ENTER]
Créez la clé privée à l'aide de la commande :
genrsa -des3 -out TestCA.key 1024
Tapez le mot de passe demandé (2 fois). Dans l'exemple : testpass.
Créez la clé publique à l'aide de la commande :
req -new -x509 -days 365 -key TestCA.key -out TestCA.crt
365 désigne le nombre de jours de validité du certificat, vous pouvez bien sûr modifier ce paramètre.
Indiquez le mot de passe.
Indiquez les informations relatives à votre société.
- Country Name (ISO du pays)
- State or Province Name (Département ou province)
- Locality Name (Ville)
- Organization Name (Nom complet de votre société)
- Organization Unit Name (Nom de votre département)
- Common Name (Votre domaine)
- Email Adress (Adresse email)


2. Créer et signer un certificat ICA


Le certificat ICA est le certificat à installer dans "autorités de certification intermédiaires"

Toujours dans la prompt DOS.
Créez la clé privée à l'aide de la ligne de commande :
genrsa -des3 -out TestICA.key 1024
Tapez le mot de passe demandé (2 fois). Dans l'exemple : testpass.
Créez la demande de certificat pour signature par l'autorité racine CA à l'aide de la commande :
req -new -key TestICA.key -out TestICA.csr
Indiquez le mot de passe.
Indiquez les informations relatives à votre société.
Ensuite le système vous demande d'indiquez un "challenge password" et un "optional company name". Dans les deux cas, laissez blanc.
Signez la demande avec la racine CA et fabriquer une clé publique à l'aide de la commande :
x509 -req -days 365 -in TestICA.csr -CA TestCA.crt -CAkey TestCA.key -set_serial 01 -out TestICA.crt
Indiquez le mot de passe.


3. Créer le certificat personnel combiné (.pfx)


Le certificat .pfx est le certificat à installer dans "Personnel"

Créez le certificat combiné à l'aide de la commande :
pkcs12 -export -out Test.pfx -inkey TestICA.key -in TestICA.crt
Indiquez le mot de passe (3 fois).



Les fichiers générés se trouvent dans le répertoire "bin" d'OpenSSL.