IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Installer police caractère


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    .....
    Inscrit en
    Juillet 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : .....

    Informations forums :
    Inscription : Juillet 2009
    Messages : 109
    Par défaut Installer police caractère
    Bonjour,

    Je suis dans l'impasse totale, malgré mes recherches ici et sur google je n'arrive pas a faire installer une police de caractère en code VB.

    J'utilise visual studio 2013 en VB.NET

    Ma police "digital.ttf" est inclu dans les ressources du programme.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            Dim cheminFichier As String = "C:\Windows\Fonts\digital.ttf"
            Dim nomdir As String = "C:\Windows\Fonts\"
     
            If My.Computer.FileSystem.FileExists(cheminFichier) Then
                MsgBox("Police déjà installée " & cheminFichier)
            Else
                'ici ça coince je sais pas quoi mettre
            End If
    Je contrôle bien avant toute installation si elle existe déjà sur l'ordinateur

    Mais me manque la commande d'installation ligne 7

    Autre question (j'avoue ne pas avoir encore cherché) est-ce que sur tous les systèmes windows leur fonts sont installées dans le dossier c:\windows\fonts ?

    Merci pour le coup de pouce

  2. #2
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    --> Premièrement tu dois paramétrer ton projet de sorte à ce qu'il possède une élévation de privilèges, il y a des exemples sur le forum :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
    Terme à rechercher : fichier Manifest

    --> Ensuite et bien tu dois copier le nouveau fonts dans le répertoire des Fonts par défaut de Windows (ton chemin est correct)

    --> Enfin n'oublies pas de renseigner la base de registre pour indiquer au système les propriétés du Font qui a été installé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Using key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts")
        key.SetValue("Description du Font", "fontname.tff")
        key.close()
    End Using
    ---> Une autre soliton plus propre et plus rapide consisterait à utiliser du PInvoke :

    http://stackoverflow.com/questions/1...-using-c-sharp

    A+

  3. #3
    Membre confirmé
    Homme Profil pro
    .....
    Inscrit en
    Juillet 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : .....

    Informations forums :
    Inscription : Juillet 2009
    Messages : 109
    Par défaut
    Bonjour wallace1 et merci pour ton aide

    La modif du fichier Manifest c'est fait
    Copier mon fichier font (digital.ttf) dans C:\Windows\Fonts\ c'est fait aussi
    Ajouter la clé dans la base de registre c'est fait aussi

    Seulement la police ne s'installe pas, je ne fait que copier le fichier

    Édit: en redémarrant l'ordinateur, la police est bien prise en compte,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
            Dim cheminFichier As String = "C:\Windows\Fonts\digital.ttf"
            Dim nom = Environment.CurrentDirectory & "\Resources\Polices\digital-7.ttf"
     
            If My.Computer.FileSystem.FileExists(cheminFichier) Then
                MsgBox("ok")
            Else
     
                System.IO.File.Copy(nom, cheminFichier)
     
                'registre
                Using key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts")
                    key.SetValue("Digital-7 (TrueType)", "digital.ttf")
                    key.Close()
                End Using
     
            End If
    Possibilité de faire quelque chose sans redémarrer?

  4. #4
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par meehan Voir le message
    Possibilité de faire quelque chose sans redémarrer?
    As-tu simplement essayés avec du PInvoke ????

  5. #5
    Membre confirmé
    Homme Profil pro
    .....
    Inscrit en
    Juillet 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : .....

    Informations forums :
    Inscription : Juillet 2009
    Messages : 109
    Par défaut
    ---> Une autre soliton plus propre et plus rapide consisterait à utiliser du PInvoke :
    D'où cette ligne écrite en gras

    As-tu simplement essayés avec du PInvoke ????
    Non je n'ai pas essayé, je me suis entêté sur la 1ère solution.

    Je vais essayer d'adapter ça

  6. #6
    Membre confirmé
    Homme Profil pro
    .....
    Inscrit en
    Juillet 2009
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : .....

    Informations forums :
    Inscription : Juillet 2009
    Messages : 109
    Par défaut
    Re,

    Je n'arrive a rien avec ton lien, en plus c'est du C#

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD17] Installation police de caractères
    Par thierrybatlle dans le forum WinDev
    Réponses: 11
    Dernier message: 12/06/2019, 15h27
  2. [WS 2008 R2] GPO - Droit d'installation police de caractères
    Par djsbens dans le forum Windows Serveur
    Réponses: 0
    Dernier message: 12/11/2012, 16h45
  3. Réponses: 3
    Dernier message: 19/08/2008, 10h41
  4. installation police ecriture
    Par ruby_robber dans le forum BIRT
    Réponses: 3
    Dernier message: 04/12/2007, 15h15
  5. iNSTALLATION POLICE SOUS xP
    Par Chonchon dans le forum Windows XP
    Réponses: 1
    Dernier message: 31/05/2006, 09h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo