Harbour retornar versão Windows 10

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

Provavelmente vai ter solução oficial, mas pra quem precisa da informação:

https://msdn.microsoft.com/pt-br/librar ... s.85).aspx

Usando esse manifest indicado, OS() e win_osIsW10() funciona corretamente no W10.

Na página da Microsoft diz que não tem efeito para versões anteriores do Windows.
Em todo caso, testei no XP, W7 e W10 e funcionou corretamente.

Caso não use esse manifest indicado, pode considerar Windows 8.2 ao invés de Windows 10.
Nenhum problema para o Harbour.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour retornar versão Windows 10

Mensagem por asimoes »

Quintas,

Você tá fazendo referencia ao windows.manifest ?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

O Harbour tem opção automática pra isso, mas já usava de outro jeito antes, e continuo usando.

Num modo simples:
Ou deixa o arquivo físico no disco, ou linquedita junto ao EXE através do arquivo RC.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Harbour retornar versão Windows 10

Mensagem por Kapiaba »

Mister Quintas, qual é a diferença desse do link para este?

Código: Selecionar todos

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="X86"
    name="FiveTech Software.FiveWin.32bits"
    type="win32"
/>
<description>Your application description here.</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="X86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>
Este não funcionará em Windows 10, é isso?
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

Apenas o programa vai detectar como sendo Windows 8.

De forma simples:
Se isso não fez falta pra você até agora, não precisa se preocupar.

A única diferença visível no momento:

Código: Selecionar todos

@ 1, 1 SAY OS()
Em Windows 10, isso mostra Windows 8.2, se não usar o manifest novo.
Só isso.
De resto, continua tudo funcionando normalmente.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour retornar versão Windows 10

Mensagem por asimoes »

O que ficou esquisito na última atualização do w10 foi a exibição da mensagem na linha com a seta em vermelho, que não acontecia na versão anterior antes da atualização. Não existia essa terceira linha com mensagem na função Shell_NotifyIcon do windows

hwg_Shellnotifyicon( .F., oMainWindow:handle, oMainWindow:oNotifyIcon:handle )
::SysWait(.1) //Só assim resolveu
hwg_Shellnotifyicon( .T., oMainWindow:handle, oMainWindow:oNotifyIcon:handle, "", cMens1, cMens2, nIconIndex)

Normal
Tela002.PNG
Estranho
Tela001.PNG
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

Não reparei nisso, vou ter que aguardar alguma mensagem.

O que ainda não descobri é sobre uma mensagem em verde ao carregar um aplicativo.
É muito rápida, quase não dá pra perceber, e muito menos saber do que se trata.
Talvez do antivírus, mas não sei.

Tenho a impressão de que abrir arquivos é muito mais rápido no W10.

Não estou gostando do leitor de PDF.
Ver o manual da NFE nele é uma merd.
Além de lento, de vez em quando retorna ao início do documento, sem motivo aparente.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

Na loja da Microsoft deu até pra descobrir que discos piratas estão virando oficiais.
Tem alguns ai que eu não conhecia, mas ai é só uma parte.
rainbow.png
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour retornar versão Windows 10

Mensagem por JoséQuintas »

Agora que a loja ficou boa demais.
119 discos do Iron Maiden.
Não vou comprar nenhum, mas é interessante.
ironmaiden.png
Mas....
Se está na loja... o que acontece se estiver no HD....
Xi...
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour retornar versão Windows 10

Mensagem por asimoes »

Quintas,

kkkk, a Microsoft já fez um dossiê do seu usuário!,

Apaga todos os "ripados"
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Harbour retornar versão Windows 10

Mensagem por cl@udio »

Boa noite
asimoes
Voce nao teria um exemplo simples com esta funcao hwg_Shellnotifyicon(), que eu possa compilar para ver.
Pois ja tentei um monte de exemplos.
A testtray da pasta samples da hwgui compila mas da erro na execucao.
Obrigado.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour retornar versão Windows 10

Mensagem por asimoes »

Olá Claudio,

Eu ainda uso a versão 2.17, eu modifiquei 2 fontes da hwgui: shellapi.c e hwindow.prg ambos na pasta source
Os arquivos no anexo devem ser copiados para a pasta source e a hwgui deve ser recompilada, não fiz teste com outra versão diferente da 2.17

Segue o anexo para usar

Exemplo de uso:

Código: Selecionar todos

#define NIIF_INFO               0x00000001 //mostra o icone exclamação
#define NIIF_WARNING            0x00000002
#define NIIF_ERROR              0x00000003
#define NIIF_USER               0x00000004 //mostra o icone da aplicação

Notificar( "", "Iniciado", "Sistema AsaPrev", NIIF_USER )

FUNCTION Notificar(cMens1, cMens2, cMens3, nIconIndex)
LOCAL oMainWindow:=Nil, oIconBandeja:=Nil, oTrayMenu:=Nil
   hb_Default(@cMens1, "")
   hb_Default(@cMens2, "Iniciado")
   hb_Default(@cMens3, "Sistema AsaPrev")
   hb_Default(@nIconIndex, NIIF_USER)

  oIcon:= HIcon():AddResource("ICON_A") //icone definido no .rc
  
  INIT WINDOW oMainWindow ;
         MAIN ;
        TITLE "" 

  CONTEXT MENU oTrayMenu
      MENUITEM "Sobre"                 ACTION {||hwg_MsgInfo("AsaPrev (32 bits)"+;
                                                 hb_EOL()+;
                                                 hb_EOL()+;
                                                 hb_Version()+;
                                                 hb_EOL()+;
                                                 hb_Compiler()+;
                                                 hb_EOL()+;
                                                 hb_EOL()+;
                                                 "Desenvolvido por Alexandre Simões"+;
                                                 hb_EOL()+;
                                                 "asimoesluz@gmail.com", "Sobre Sistema AsaPrev")};
                                                 BITMAP "SOBRESIS" //definido no .rc
                   
      SEPARATOR
      MENUITEM "Sair"                  ACTION {|| hwg_ExitProcess() } BITMAP "BMP_SAIR24"
   ENDMENU 
   
   oMainWindow:InitTray(oIcon,, oTrayMenu, cMens1, cMens2, cMens3, nIconIndex)

   SysWait(2)
   
   hwg_ShellModifyIcon( oMainWindow:handle, oIcon:handle, "Sistema AsaPrev"+hb_EOL()+"Alexandre Simões", "", "", nIconIndex)
   
   ACTIVATE WINDOW oMainWindow NOSHOW
   
   oTrayMenu:End()
  
RETURN Nil

FUNCTION SysWait( nWait )
LOCAL iTime := Seconds()

   nWait := hb_DefaultValue(nWait, 1)

   DO WHILE Seconds() - iTime < nWait
      hwg_DoEvents()
   ENDDO

RETURN Nil
Anexos
hwindow.prg
(46.73 KiB) Baixado 97 vezes
shellapi.c
(5.3 KiB) Baixado 92 vezes
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Harbour retornar versão Windows 10

Mensagem por cl@udio »

Bom dia asimoes
Voce poderia me passar o arquivo .rc deste exemplo.
Estou achando que meu problema esta neste arquivo.
Para ter certeza.
Me desculpe o texto sem acento, nao consigo colocar os acentos.
Depois que mudei o teclado.
Obrigado
Claudio
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Harbour retornar versão Windows 10

Mensagem por asimoes »

Olá

Segue o .rc

Eu compilo com harbour 32 fork com mingw

Código: Selecionar todos

#include "hbver.h"

#define HB_VER_PRODUCTVERSION          HB_VER_MAJOR,HB_VER_MINOR,HB_VER_RELEASE,0

1001 BITMAP AVI\\SAIR.BMP
1002 BITMAP AVI\\EMAIL.BMP

1 24 AVI\\Windows7.Manifest

ICON_A                  ICON          AVI\\ASAPREV.ICO
ICON_ASAPREV            ICON          AVI\\ASAPREV.ICO
ICON_ACHOICE            ICON          AVI\\IACHOICE.ICO
ICON_PERGUNTA           ICON          AVI\\ICON_PERGUNTA.ICO
ICON_PRINT              ICON          AVI\\PRINT.ICO
ICON_CEP                ICON          AVI\\CEP.ICO
ICON_EMAIL              ICON          AVI\\EMAIL.ICO
ICON_EXPORTAR           ICON          AVI\\EXPORTAR.ICO
ICON_GRAVAR             ICON          AVI\\IGRAVAR.ICO
ICON_SAIR               ICON          AVI\\SAIR.ICO
ICON_ZOOMIN             ICON          AVI\\ZOOMIN.ICO
ICON_ZOOMOUT            ICON          AVI\\ZOOMOUT.ICO
ICON_WORD               ICON          AVI\\WORD.ICO
ICON_PDF                ICON          AVI\\PDF.ICO
ICON_CANCELAR           ICON          AVI\\ICANCELAR.ICO
ICON_CADEADO            ICON          AVI\\CADEADO.ICO
ICON_GOOGLE             ICON          AVI\\GOOGLE.ICO
ICON_INTERNET           ICON          AVI\\APPLICATIONS_INTERNET.ICO
ICON_BRADESCO           ICON          AVI\\IBRADESCO.ICO
ICON_OK                 ICON          AVI\\IOK.ICO
ICON_OK16               ICON          AVI\\IOK16.ICO
ICON_SAIR16             ICON          AVI\\ISAIR16.ICO
ICON_OK24               ICON          AVI\\IOK24.ICO
ICON_PRIMEIRO           ICON          AVI\\IPRIMEIRO.ICO
ICON_ULTIMO             ICON          AVI\\IULTIMO.ICO
ICON_SEGUINTE           ICON          AVI\\ISEGUINTE.ICO
ICON_ANTERIOR           ICON          AVI\\IANTERIOR.ICO
ICON_LUPA               ICON          AVI\\ILUPA.ICO
ICON_CANCELA            ICON          AVI\\ICANCELA.ICO
ICON_AMPULHETA          ICON          AVI\\IAMPULHETA.ICO
ICON_INPUT32            ICON          AVI\\INPUT32.ICO
AVI_AMPULHETA           AVI           AVI\\AMPULHETA.AVI
BMP_OK24                BITMAP        AVI\\OK24.BMP 
BMP_SAIR24              BITMAP        AVI\\SAIR24.BMP 
TASKBAR                 BITMAP        AVI\\TASKBAR.BMP
SOBRESIS                BITMAP        AVI\\SOBRESIS.BMP 

File                    TXT     asa.rc

/* Version info */
#include <winver.h>

1 VERSIONINFO
FILEVERSION 5,0,0,0
PRODUCTVERSION HB_VER_PRODUCTVERSION
FILEOS 0x4
FILETYPE 0x1
{
  BLOCK "StringFileInfo"
  {
     BLOCK "040904b0"
    {
      VALUE "CompanyName", "AsaPrev"
      VALUE "FileDescription", "Sistema AsaPrev\000"
      VALUE "FileVersion", "03.07.2016"
      VALUE "InternalName", "AsaPrev"
      VALUE "LegalCopyright", "Copyright © 07-2016 by Alexandre Simões\000"
      VALUE "LegalTrademarks", "Alexandre Simões"
      VALUE "OriginalFilename", "AsaPrev.exe"
      VALUE "ProductName", "Sistema AsaPrev"
      VALUE "ProductVersion", "6.0 - 07/2016"
      VALUE "Comments", "Sistema de Controle de Sócios\000"
      VALUE "Aditional Notes", "Não pode ser distribuido sem autorização."
    }
  }
  BLOCK "VarFileInfo"
  {
    VALUE "Translation", 0x416, 0x4B0
  }
}
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Harbour retornar versão Windows 10

Mensagem por cl@udio »

erro.png
Sempre este erro.
Vou tentar mudar para os 2 arquivos que vc mandou e compilar hwgui 2.20 build3 que estou usando.
Agradeco pela atencao.
Claudio
Responder