OVH Cloud OVH Cloud

Police de caractères

7 réponses
Avatar
Jean-Francois.Vassard
Bonjour,

J'ai essayé, mais je ne dois pas être très doué, ça ne marche pas !
Module
Public Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA"
(ByVal lpFileName As String) As LongCall AddFontResource
Procédure
(App.Path & "\c39hrp36dltt.TTF")

Help me !

Merci,

JF


Salut,

Public Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA"
(ByVal lpFileName As String) As Long

Il suffit de passer passer le chemin vers la police à installer en paramètre
: y a pas plus simple !

Call AddFontResource("c:\mafont.ttf")


Et pour la supprimer :

Public Declare Function RemoveFontResource Lib "gdi32" Alias
"RemoveFontResourceA" (ByVal lpFileName As String) As Long
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"Jean-Francois.Vassard" <jean-francois.vassard@wanadoo.fr> a écrit dans le
message de news: 420a69ec$0$28552$8fcfb975@news.wanadoo.fr...
> Bonjour,
>
> Quelqu'un connaîtrait-il un moyen (pas trop compliqué) pour qu'une
> application VB5 VB6 installe une nouvelle police de caractères dans
> Windows/Fonts?
>
> Merci d'avance,
>
> JFV

7 réponses

Avatar
ng
Salut,

Public Declare Function AddFontResource Lib "gdi32" Alias
"AddFontResourceA"


(ByVal lpFileName As String) As LongCall AddFontResource
Procédure
Call AddFontResource(App.Path & "c39hrp36dltt.TTF")





Es-tu sur du chemin ?
Attention a l'utilisation que tu fais de App.Path, il peut renvoyer un slash
à la fin si l'appli est dans la racine d'un lecteur, donc :

Dim strAppPath As String
If Right$(App.Path, 1) = "" Then strAppPath = App.Path Else strAppPath App.Path & ""

'de cette facon il y a tjrs un à la fin et donc :

Call AddFontResource(App.Path & "c39hrp36dltt.TTF")

Sinon sur quoi te bases tu pour dire que ca ne fonctionne pas ? (attention,
le nom affiché dans le dossier font ne correspond pas au nom de fichier
mais au nom de la police).


--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Avatar
Jean-Francois.Vassard
Bonjour,

Merci pour tes conseils, ng
mais VB rejette
As LongCall AddFontResource
comme erreur de syntaxe ("Attendu fin d'instruction")

Pour le chemin, j'en suis sûr. Pas de problème de slash.

"ng" a écrit dans le message de
news:
Salut,

>> Public Declare Function AddFontResource Lib "gdi32" Alias
>> "AddFontResourceA"
> (ByVal lpFileName As String) As LongCall AddFontResource
>> Procédure
>> Call AddFontResource(App.Path & "c39hrp36dltt.TTF")

Es-tu sur du chemin ?
Attention a l'utilisation que tu fais de App.Path, il peut renvoyer un


slash
à la fin si l'appli est dans la racine d'un lecteur, donc :

Dim strAppPath As String
If Right$(App.Path, 1) = "" Then strAppPath = App.Path Else strAppPath > App.Path & ""

'de cette facon il y a tjrs un à la fin et donc :

Call AddFontResource(App.Path & "c39hrp36dltt.TTF")

Sinon sur quoi te bases tu pour dire que ca ne fonctionne pas ?


(attention,
le nom affiché dans le dossier font ne correspond pas au nom de fichier
mais au nom de la police).


--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/


Avatar
scraper
Bonjour ng, dans le message
news://
tu disais :

Es-tu sur du chemin ?
Attention a l'utilisation que tu fais de App.Path, il peut renvoyer
un slash à la fin si l'appli est dans la racine d'un lecteur, donc :

Dim strAppPath As String
If Right$(App.Path, 1) = "" Then strAppPath = App.Path Else
strAppPath = App.Path & ""



et en mettant simplement :
If Right$(App.Path, 1) <> "" Then strAppPath = App.Path & ""





??

--

Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm

scraper
Avatar
ng
Salut,


If Right$(App.Path, 1) <> "" Then strAppPath = App.Path & ""


Et si ton App.Path n'a pas de à la fin alors ta variable strAppPath est
vide... ca ne sert donc à rien.


--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Avatar
ng
Salut,

>> Public Declare Function AddFontResource Lib "gdi32" Alias
>> "AddFontResourceA"
> (ByVal lpFileName As String) As LongCall AddFontResource
>> Procédure
>> Call AddFontResource(App.Path & "c39hrp36dltt.TTF")





???

La déclaration pour l'API est la suivant :

Public Declare Function AddFontResource Lib "gdi32" Alias
"AddFontResourceA" (ByVal lpFileName As String) As Long

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Avatar
scraper
Bonjour ng, dans le message
news://
tu disais :


Salut,


If Right$(App.Path, 1) <> "" Then strAppPath = App.Path & ""


Et si ton App.Path n'a pas de à la fin alors ta variable strAppPath
est vide... ca ne sert donc à rien.




ooops !

mille excuses, j'avais zappé strApp.Path :-(

désolé ...


--

Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm

scraper
Avatar
Jean-Francois.Vassard
Bonjour,

J'ai bien compris le sens de votre message. Ca doit venir du chemin indiqué.

'Module
Public Declare Function AddFontResource Lib "gdi32" Alias "AddFontResourceA"
(ByVal lpFileName As String) As Long

J'ai donc indiqué un chemin en toutes lettres et mis le fichier ttf au bon
endroit:
'Procédure
Call AddFontResource("E:Mes documentsc39hrp36dltt.TTF")
et...
Ça ne marche pas.
Je me suis dit que c'était peut-être un problème de nom fichier court. Je
l'ai donc mis à la racine de C:
'Procédure
Call AddFontResource("C:c39hrp36dltt.TTF")
et...
Ça ne marche pas!
J'ai essayé
AddFontResource("C:c39hrp36dltt.TTF") 'sans le Call
et...
Ça ne marche pas!

Snif!


"Jean-Francois.Vassard" a écrit dans le
message de news:421c26fa$0$3137$
Bonjour,

J'ai essayé, mais je ne dois pas être très doué, ça ne marche pas !
Module
Public Declare Function AddFontResource Lib "gdi32" Alias


"AddFontResourceA"
(ByVal lpFileName As String) As LongCall AddFontResource
Procédure
(App.Path & "c39hrp36dltt.TTF")

Help me !

Merci,

JF


Salut,

Public Declare Function AddFontResource Lib "gdi32" Alias


"AddFontResourceA"
(ByVal lpFileName As String) As Long

Il suffit de passer passer le chemin vers la police à installer en


paramètre
: y a pas plus simple !

Call AddFontResource("c:mafont.ttf")


Et pour la supprimer :

Public Declare Function RemoveFontResource Lib "gdi32" Alias
"RemoveFontResourceA" (ByVal lpFileName As String) As Long
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"Jean-Francois.Vassard" a écrit dans le
message de news: 420a69ec$0$28552$
> Bonjour,
>
> Quelqu'un connaîtrait-il un moyen (pas trop compliqué) pour qu'une
> application VB5 VB6 installe une nouvelle police de caractères dans
> Windows/Fonts?
>
> Merci d'avance,
>
> JFV