On ne fait pas de la magie

«Toute technologie suffisamment avancée est indiscernable de la magie.» Arthur C. Clarke

Catégorie : Windows

  • Taille des menus, du curseur texte et du pointeur de la souris dans les applications

    Taille des menus, du curseur texte et du pointeur de la souris dans les applications

    Une fois n’est pas coutume, je ne vais pas parler de magie, mais d’énervement vis à vis des applications, suite à ma situation personnelle.
    Atteint d’un glaucome, je suis confronté à une diminution de ma vision qui se traduit par des difficultés à distinguer les textes écrits en petits caractères, en particulier sur les écrans.
    Vous allez me dire qu’il est facile aujourd’hui de changer les tailles de caractères pour les régler à notre gout. C’est exact, pour la majorité des systèmes et des applications, soit de façon intuitive en utilisant un zoom intégré (par exemple avec un CTRL + ou un CTRL molette souris), soit par l’utilisation d’option d’affichage, plus ou moins claires.

    Mais quid des menus ? quid du curseur ? ou du pointeur de la souris ?

    (suite…)
  • MSI et Windows Installer

    A l’occasion d’une formation Installshield, j’ai rafraichi ma liste d’outils tournant autour de MSI et de Windows Installer.

    Voilà un extrait de la panoplie :

    MAKEMSI est un logiciel freeware qui permet de construire un package MSI à partir d’une description définie dans un fichier XML.

    Dans la même lignée, j’aurais tendance à préférer WiX (Windows Installer Toolkit) qui utilise lui aussi une syntaxe XML pour décrire une installation. Il dispose d’un sous projet Votive pour manipuler ses fichiers avec Visual Studio.

    Advance Installer est un outil de conception d’installation, avec une interface graphique, disponible sous plusieurs éditions. Il existe une édition gratuite qui permet de créer des projets simples.

    Enfin, si Orca vous semble trop rudimentaire ou rébarbatif, vous pouvez utiliser InstEd pour éditer directement vos fichiers MSI.

  • Erreur 80243004 lors d’un update Windows

    Erreur 80243004 lors d’un update Windows

    Lors de la préparation d’une formation Windows Server, je suis tombé sur un problème dont la cause m’a fait sourire.Erreur 80243004 lors d'un update Windows

    En appliquant les mises à jour sur une machine virtuelle Windows Server, j’obtiens une erreur 80243004 et tout l’update échoue.

    Un peu de recherche dans la base de connaissance Microsoft me donne la solution  (https://support.microsoft.com/kb/2837515) : il faut que l’icône de notification de Windows Update soit activée dans la zone de notification pour que les mises à jour puissent se faire !

    Je crois que c’est le bug le plus amusant que j’ai vu depuis quelques mois …

    PS : Petit truc pour résoudre plus rapidement vos problèmes : N’utilisez pas une recherche large sur Google pour ce genre de difficultés. Vous avez un problème clairement identifié, chez un éditeur, avec un numéro ? Aller directement chercher dans les informations mises à disposition par cet éditeur vous fera gagner beaucoup de temps en n’ayant pas à lire de nombreux messages décrivant le même problème, sans fournir de solutions, ou – pire – donnant des solutions douteuses.

  • Comment lancer une macro Excel VBA à l’ouverture de n’importe quel classeur ?

    C’est une question souvent posée sur Internet et les réponses sont pratiquement toujours la façon d’exécuter une macro à l’ouverture d’un classeur spécifique, en créant fort correctement un module Workbook_Open dans le conteneur ThisWorkBook de ce classeur.

    Mais comment utiliser Excel VBA pour avoir une macro lancée quel que soit le classeur ouvert, sans faire de modification dans chaque classeur ?

    Il faut écrire une classe qui permet de traiter les événements de la classe Application, puis affecter l’objet Application réel à cette nouvelle classe.

    Par exemple, dans un module de classe appelé MonApp, tapez le code suivant :

    Option Explicit
    Public WithEvents App As Application

    Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
    MsgBox (« Ouverture du classeur  » & Wb.Name)
    End Sub

    Puis dans le conteneur ThisWorkBook du fichier de macro personnel (PERSO.XLS), il faut instancier la classe MonApp et écrire un module Workbook_Open. Le code ressemble à ceci :

    Option Explicit
    Dim MonExcel As New MonApp

    Private Sub Workbook_Open()
    Set MonExcel.App = Application
    End Sub

    Et le tour est joué.

    Si ces opérations vous semblent de la magie noire, c’est qu’il vous manque quelques notions de programmation VBA que vous pouvez découvrir lors d’une formation à Excel..

  • Comment utiliser Installshield pour effacer des fichiers lors d’une installation ?

    Une question récurrente qui m’est posée lors d’interventions sur Installshield concerne la suppression de fichiers présents sur la machine cible au moment de l’installation.

    Il est normal qu’elle soit posée, car la réponse n’apparaît pas de façon évidente dans l’interface du logiciel.

    Si vous souhaitez supprimer des fichiers qui sont présents lors de l’installation, il faut renseigner la table RemoveFile, en vérifiant l’action RemoveFiles est bien présente dans la séquence d’installation.

    Cette table contient contient une propriété DirProperty qui indique le chemin complet du répertoire du fichier à supprimer. InstallMode permet de spécifier si le fichier est effacé lors de l’installation, de la désinstallation ou dans les deux cas.

    EffacerFichierInstallshield1.png

    Le composant indiqué doit bien sur être associé à une fonctionnalité installée pour que l’opération soit exécutée.

    Attention, l »interface graphique d’Installshield ne montre pas la liaison entre le composant et la table RemoveFile. Notamment, si on demande à n’afficher que les nœuds non vide, le composant peut apparaitre comme vide alors que la table RemoveFile fait référence au composant.

    EffacerFichierInstallshield2.png

    Vous pouvez constater que le composant EffaceFichier semble vide alors qu’il est utilisé pour supprimer des fichiers au travers de la table RemoveFile :

    EffacerFichierInstallshield3.png

     

    .