Clipper On Line • Ver Tópico - Instalar Fontes no Windows 7 de 32 bits

Instalar Fontes no Windows 7 de 32 bits

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

Instalar Fontes no Windows 7 de 32 bits

Mensagempor Kapiaba » 22 Jan 2015 10:39

Bom dia Senhores, o que estou fazendo mal? Não está instalando a Fonte no windows 7 de 32 bits.

#Include "FiveWin.ch"

FUNCTION Main ()

   INSTFONTS()

RETURN NIL

FUNCTION INSTFONTS()

   Local lInstala := .F.

   IF .NOT. MsgYesNo( "Instalar Fontes da NF-e no Windows?", ;
                      "Instalar Fontes da NF-e no Windows " )

      RETURN NIL

   ENDIF

   IF FILE( "C:\INST_NFE\GERAPNFE.EXE" ) .OR. ;
      FILE( "C:\INST_NFE\GERAONFE.EXE" ) .OR. ;
      FILE( "C:\INST_NFE\GERANFE.EXE" ) // PLENOIND

      lInstala := .T.

   ENDIF

   IF lInstala

      CopyFile( "C:\INST_NFE\fontes\Code128bWin.ttf", GetWinDir() + "\Fonts\Code128bWin.ttf", .T. )

      AddFontResource( "C:\INST_NFE\fontes\Code128bWin.ttf" )

      IF FILE( GetWinDir() + "\Fonts\Code128bWin.ttf" )

         MSGWAIT( "As Fontes da NF-e Foram Instalados Com Sucesso..." )

      ELSE

         MSGWAIT( "As Fontes da NF-e Nao Foram Instaladas..." )

         lInstala := .F.

      ENDIF   

   ENDIF   

RETURN NIL

// FIM


Obg. abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1494
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 284 vezes
Mens.Curtidas: 90 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor Kapiaba » 22 Jan 2015 16:54

Resolvido:

Alessandro, você é o cara!! Muito obrigado, funciona em windows 7, 8 e 10, nestes 2 últimos, testado pelo Alessandro.

#Include "FiveWin.ch"
#include "Directry.ch"

#ifndef XPP
   #define  HKEY_CLASSES_ROOT       2147483648
   #define  HKEY_CURRENT_USER       2147483649
   #define  HKEY_LOCAL_MACHINE      2147483650
   #define  HKEY_USERS              2147483651
   #define  HKEY_PERFORMANCE_DATA   2147483652
   #define  HKEY_CURRENT_CONFIG     2147483653
   #define  HKEY_DYN_DATA           2147483654
#else
   #define  HKEY_CLASSES_ROOT       1
   #define  HKEY_CURRENT_USER       2
   #define  HKEY_LOCAL_MACHINE      3
   #define  HKEY_USERS              4
   #define  HKEY_PERFORMANCE_DATA   5
   #define  HKEY_CURRENT_CONFIG     6
   #define  HKEY_DYN_DATA           7
#endif

FUNCTION AddFonte()

  INSTFONTS()

RETURN NIL

FUNCTION INSTFONTS()

   Local lInstala := .F.

   IF .NOT. MsgYesNo( "Instalar Fontes da NF-e no Windows?", ;
                      "Instalar Fontes da NF-e no Windows " )

      RETURN NIL

   ENDIF

   IF FILE( "C:\INST_NFE\GERAPNFE.EXE" ) .OR. ;
      FILE( "C:\INST_NFE\GERAONFE.EXE" ) .OR. ;
      FILE( "C:\INST_NFE\GERANFE.EXE" ) // PLENOIND

      lInstala := .T.

   ENDIF

   IF lInstala

      IF .NOT. FILE( GetWinDir() + "\Fonts\Code128bWin.ttf" )

         // Desligando o UAC do Windows.
         oReg := TReg32():Create( HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" )
         oReg:Set( "EnableLUA", 0 )
         oReg:Close()

         // Assim, o windows explorer mostra as fontes
         LZCOPYFILE( "C:\INST_NFE\fontes\Code128bWin.ttf", GetWindir() + "\fonts\Code128bWin.ttf")

         AddFontResource( "C:\INST_NFE\fontes\Code128bWin.ttf" )

         LZCOPYFILE( "C:\INST_NFE\fontes\Code128bWinLarge.ttf", GetWindir() + "\fonts\Code128bWinLarge.ttf")

         AddFontResource( "C:\INST_NFE\fontes\Code128bWinLarge.ttf" )

         oReg := TReg32():Create( HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" )
         oReg:Set( "EnableLUA", 1 )
         oReg:Close()

      ELSE

         /*
         oReg := TReg32():Create( HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" )

         // Isto nao funcionou em Windows 7 32 bits.
         IF oReg:Get( "EnableLUA" ) == 0
            oReg:Set( "EnableLUA", 1 )
         ENDIF

         oReg:Close()
         */

      ENDIF

      IF FILE( GetWinDir() + "\Fonts\Code128bWin.ttf" )

         MsgWait( "As Fontes da NF-e Foram Instalados Com Sucesso..." )

      ELSE

         MsgWait( "As Fontes da NF-e Nao Foram Instaladas..." )

         MsgInfo( "Desligue o Controle de Usuarios do Windows(UAC)", ;
                  "Desligue o Controle de Usuarios do Windows(UAC)" )

         lInstala := .F.

      ENDIF

   ELSE

      MsgWait( "As Fontes da NF-e Nao Foram Instaladas..." )

      MsgInfo( "PROGRAMA DA NOTA FISCAL NAO LOCALIZADO...", ;
               "PROGRAMA DA NOTA FISCAL NAO LOCALIZADO..." )

      lInstala := .F.

   ENDIF

   lInstala := .F.

RETURN NIL

// Funções AddFontResource e RemoveFontResource, em linguagem C

#pragma BEGINDUMP

#include <windows.h>
#include <hbapi.h>

HB_FUNC ( ADDFONTRESOURCE )
{
    hb_retni( AddFontResource( (LPCSTR) hb_parc(1) ) );
}

HB_FUNC ( REMOVEFONTRESOURCE )
{
    hb_retl( RemoveFontResource( (LPCSTR) hb_parc(1) ) );
}

#pragma ENDDUMP

// FIM


I LOVE FIVEWIN!
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1494
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 284 vezes
Mens.Curtidas: 90 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor fladimir » 18 Mai 2016 18:24

Algumas dúvidas...

No caso da sua postagem ao instalar uma fonte vc DESATIVA o UAC q imagino ficar então a partir disto desativado... agora a dúvida é... fazendo isso teu sistema passa a rodar como Administrador ou nada ver?

Pergunto pq tem um outro tópico q vi q vc tb participou sobre como rodar o aplicativo como Administrador...

Então fiquei na dúvida sobre rodar como Administrador e desativar o UAC se são necessários os 2 procedimentos ou se 1 seria semelhante ao outro..

Tb fiquei na dúvida se deve ser colocado no inicio do sistema, digamos após o Main() e depois vem normal e fazendo isso se precisa reiniciar ou se já no inicio do sistema já resolve e o sistema já roda como Administrador...

[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


DESKTOP CONSOLE Harbour | MinGW | DBF | CDX | FastReport | MySQL
DESKTOP VISUAL... Harbour | MinGW | Xailer | MariaDB Nativo | FastReport
MOBILE Android/IOS e WEB - Windev Mobile 22
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2380
Data de registro: 15 Nov 2006 19:21
Curtiu: 26 vezes
Mens.Curtidas: 142 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor Kapiaba » 19 Mai 2016 09:57

Bom dia Fladimir, porfa fale com o Rochinha, ele tem uma solução mais nova que esta. Abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1494
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 284 vezes
Mens.Curtidas: 90 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor fladimir » 19 Mai 2016 19:13

grato João.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


DESKTOP CONSOLE Harbour | MinGW | DBF | CDX | FastReport | MySQL
DESKTOP VISUAL... Harbour | MinGW | Xailer | MariaDB Nativo | FastReport
MOBILE Android/IOS e WEB - Windev Mobile 22
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2380
Data de registro: 15 Nov 2006 19:21
Curtiu: 26 vezes
Mens.Curtidas: 142 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor rochinha » 21 Mai 2016 17:44

Amiguinhos,

fladimir
Veja se ajuda.
Anexos
fontinst.rar
(76.27 KiB) Baixado 41 vezes
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4226
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 514 vezes
Mens.Curtidas: 183 vezes

Instalar Fontes no Windows 7 de 32 bits

Mensagempor Kapiaba » 02 Jun 2016 16:45

Uma boa idéia, não testei:

#include "FiveWin.ch"

FUNCTION INSTFONTS()

   Local lDescarga:=.F.

   IF FILE("fontinst.inf")
      ERASE fontinst.inf
   ENDIF

   IF !MSGYESNO("Instalar Codigos de barras", "Instalar Codigos de barras")
      RETURN NIL
   ENDIF

   IF !FILE("fontinst.exe")
      lDescarga:=.T.
   ENDIF

   IF !FILE("Bar128ct.ttf")
      lDescarga:=.T.
   ENDIF

   IF lDescarga
      UPLOADFONTS()
   ENDIF

   XMENSCEN("[fonts]")

   LZCOPYFILE( Curdrive()+ ":\" + Curdir() + "\Bar128ct.ttf", GetWindir()+"\fonts\Bar128ct.ttf" )

   xmenscen("Bar128ct.ttf")

   WINEXEC("fontinst.exe /f fontinst.inf")

   MSGWAIT("Fontes Instaladas")

RETURN NIL

FUNCTION XMENSCEN(cText)

   Local cFile:="fontinst.inf"
   Local oText

   oText := TTxtFile():New(cFile)

   if oText:Open()
      oText :Add( cText )
      oText :Close()
   endif

RETURN NIL

FUNCTION UPLOADFONTS()

   Local oText,i
   Local n:=0

   IF FILE("UPLOADB.TXT")
        ERASE  UPLOADB.TXT
   ENDIF

   oText:= TTxtFile():New("UPLOADB.TXT" )

   if oText:Open()

      oText :Add("OPEN 999.999.999.999") //ftp de los fuentes
      oText :Add("software")
      oText :Add("1234567890" )
      oText :Add("PROMPT OFF" )

      oText :Add("BIN" )
      oText :Add("HASH" )
      oText :Add("MGET Bar128ct.ttf")
      oText :Add("MGET fontinst.exe" )
      oText :Add("QUIT" )
      oText:Close()

   endif

   IF FILE("UPLOADB.TXT")
      WAITRUN("FTP -s:UPLOADB.TXT")
   ENDIF

   ERASE UPLOADB.TXT

   MSGWAIT("Fontes Baixadas", "Descarga OK")

Return .T.

// FIM


Kapiaba
Colaborador

Colaborador
 
Mensagens: 1494
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 284 vezes
Mens.Curtidas: 90 vezes




Retornar para FiveWin

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro