[WD11] Conseil pour installation d'une police

Le
Fredo MT
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique. Comment
feriez-vous pour installer celle-ci sur le poste client si elle n'existe
pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive pas
à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
PYT
Le #14598931
Fredo MT a écrit :
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique. Comment
feriez-vous pour installer celle-ci sur le poste client si elle n'existe
pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive pas
à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses




J'ai fait un exe qui installe les police en utilisant les bonnes api.

Je n'ai pas ca sous la main mais ce se trouve facilement dans le msdn.
En autre il faut broadcaster au apppli la présence d'une nouvelle police.


PYT
Fredo MT
Le #14598901
Merci pour ta réponse !

Pourrais-tu m'en dire un peu plus stp, et me donner un peu plus
d'éléments... Code source, exe ou autres !
D'avance merci

"PYT" 47011c54$0$8022$
Fredo MT a écrit :
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses




J'ai fait un exe qui installe les police en utilisant les bonnes api.

Je n'ai pas ca sous la main mais ce se trouve facilement dans le msdn.
En autre il faut broadcaster au apppli la présence d'une nouvelle police.


PYT


PYT
Le #14598881
Fredo MT a écrit :
Merci pour ta réponse !

Pourrais-tu m'en dire un peu plus stp, et me donner un peu plus
d'éléments... Code source, exe ou autres !
D'avance merci

"PYT" 47011c54$0$8022$
Fredo MT a écrit :
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses




J'ai fait un exe qui installe les police en utilisant les bonnes api.

Je n'ai pas ca sous la main mais ce se trouve facilement dans le msdn.
En autre il faut broadcaster au apppli la présence d'une nouvelle police.


PYT






Peut être demain si j'y pense.

PYT
Fredo MT
Le #14598851
Merci bcp

"PYT" 47013f52$0$31747$
Fredo MT a écrit :
Merci pour ta réponse !

Pourrais-tu m'en dire un peu plus stp, et me donner un peu plus
d'éléments... Code source, exe ou autres !
D'avance merci

"PYT" 47011c54$0$8022$
Fredo MT a écrit :
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans
C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses




J'ai fait un exe qui installe les police en utilisant les bonnes api.

Je n'ai pas ca sous la main mais ce se trouve facilement dans le msdn.
En autre il faut broadcaster au apppli la présence d'une nouvelle
police.


PYT






Peut être demain si j'y pense.

PYT


Antoine
Le #14598801
Nous on fait un truc du genre :

ichFonte est chaine="C:...LaFonte.ttf"+Caract(0)
SI API("GDI32","AddFontResourceA",&ichFonte)=0 ALORS Erreur(ErreurInfo)

Antoine


"Fredo MT" 47011abb$0$21580$
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses




Fredo MT
Le #14598791
Merci beaucoup Antoine, c'est exactement ce qu'il me manquait. Il ne me
reste plus qu'à tester en version réelle depuis l'exe voir si l'ajout se
fait bien.

"Antoine" news: 4701f1f1$0$27410$
Nous on fait un truc du genre :

ichFonte est chaine="C:...LaFonte.ttf"+Caract(0)
SI API("GDI32","AddFontResourceA",&ichFonte)=0 ALORS Erreur(ErreurInfo)

Antoine


"Fredo MT" news: 47011abb$0$21580$
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses








Fredo MT
Le #14598651
J'ai des problèmes en fonction des machines, sur certaines la police
s'affiche sur d'autres non. Lorsque j'utilise AddFontResourceA et que je
coupe mon logiciel utilisant cette police, je ne peux supprimer le fichier
ttf de la police dans mon RepExe(). J'ai décidé de la supprimer à la
fermeture du logiciel avec la fonction RemoveFontResourceA mais c'est
toujours le même problème.
Comment dois-je procéder :
1) Copie de MaPoliceSpace.ttf dans C:WindowsFonts
2) AddFontResourceA depuis le chemin C:WindowsFontMaPoliceSpace.ttf
3) A la fermeture RemoveFontResourceA

Merci

"Antoine" news: 4701f1f1$0$27410$
Nous on fait un truc du genre :

ichFonte est chaine="C:...LaFonte.ttf"+Caract(0)
SI API("GDI32","AddFontResourceA",&ichFonte)=0 ALORS Erreur(ErreurInfo)

Antoine


"Fredo MT" news: 47011abb$0$21580$
Bonjour à tous,

J'utilise dans un de mes projets une police (.ttf) bien spécifique.
Comment feriez-vous pour installer celle-ci sur le poste client si elle
n'existe pas.
Ce que j'ai fais :
* Je l'ai intégré dans mon exe lors de ma compilation, mais je n'arrive
pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
manipulation à suivre ?
Ce que je ne veux pas faire :
* Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFonts

Que feriez-vous ?

Merci d'avance pour vos réponses








payalba
Le #14598591
On 2 oct, 18:18, "Fredo MT"
J'ai des problèmes en fonction des machines, sur certaines la police
s'affiche sur d'autres non. Lorsque j'utilise AddFontResourceA et que je
coupe mon logiciel utilisant cette police, je ne peux supprimer le fichier
ttf de la police dans mon RepExe(). J'ai décidé de la supprimer à la
fermeture du logiciel avec la fonction RemoveFontResourceA mais c'est
toujours le même problème.
Comment dois-je procéder :
1) Copie de MaPoliceSpace.ttf dans C:WindowsFonts
2) AddFontResourceA depuis le chemin C:WindowsFontMaPoliceSpace.ttf
3) A la fermeture RemoveFontResourceA

Merci

"Antoine"


> Nous on fait un truc du genre :

> ichFonte est chaine="C:...LaFonte.ttf"+Caract(0)
> SI API("GDI32","AddFontResourceA",&ichFonte)=0 ALORS Erreur(ErreurInf o)

> Antoine

> "Fredo MT" >news: 47011abb$0$21580$426a7__BEGIN_MASK_n#9g02mG7!__...__END_MASK_i?a63 jfAD$
>> Bonjour à tous,

>> J'utilise dans un de mes projets une police (.ttf) bien spécifique.
>> Comment feriez-vous pour installer celle-ci sur le poste client si elle
>> n'existe pas.
>> Ce que j'ai fais :
>> * Je l'ai intégré dans mon exe lors de ma compilation, mais je n'a rrive
>> pas à l'extraire pour l'installer sur le poste en cours. Quelle est la
>> manipulation à suivre ?
>> Ce que je ne veux pas faire :
>> * Mettre le fichier ttf dans le repExe et le copier dans C:WindowsFo nts

>> Que feriez-vous ?

>> Merci d'avance pour vos réponses- Masquer le texte des messages pr écédents -

- Afficher le texte des messages précédents -


Désolé d'avoir tardé : voici le code que j'utilise pour installer des
polices sur un poste : 'c'est du windev 5.5 mais ca ne devrait pas
poser de pb pour les versions supérieure)

//une fonction que lit les police dans un répertoire
flistefichier(RepInst+"Police*.ttf","InstallePolice")

//la procedure d'instalation
procedure InstallePolice(Chemin,NomFichier,Change,Pointeur)

LaPolice est une chaine asciiz sur 260 = extraitchaine(NomFichier,
1,".")+".FOT"

lpszFontFile est une chaine asciiz sur 260 = Chemin+NomFichier
//ClecheminFonts est une chaine
//CheminFonts est une chaine

lpszCurrentPath est une chaine asciiz sur 260
lpszResourceFile est une chaine asciiz sur 260

si change=1 alors renvoyer faux

pidl est un entier long
Resultat est un entier long

Resultat = Appeldll32("shell32","SHGetSpecialFolderLocation",handle(),
20,&pidl);
si pidl alors
Appeldll32("SHELL32","SHGetPathFromIDList",pidl,&lpszCurrentPath)
AppelDLL32("KERNEL32","GlobalFree",pidl)

si fcopiefichier(Chemin+nomfichier,lpszCurrentPath+""+nomFichier)
alors

lpszResourceFile = lpszCurrentPath+""+LaPolice
AppelDLL32("Gdi32","CreateScalableFontResourceA" , 0,
&lpszResourceFile, &LaPolice, &lpszCurrentPath)
appeldll32("Gdi32","AddFontResourceA",&LaPolice)
sendmessage(HWND_BROADCAST,WM_FONTCHANGE,0,0)
fin
fin

Cordialement,

PYT
Publicité
Poster une réponse
Anonyme