Arquivo Manifest

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

Arquivo Manifest

Mensagem por JoséQuintas »

Acabo de testar meu manifest do Harbour no Visual Basic 6.
Não me refiro a um aplicativo gerado, mas ao ambiente de desenvolvimento do Visual Basic 6.
Funciona perfeito, muuuuuito melhor que o modo de compatibilidade e/ou administrador.

VB6, 32 bits, de 1998, em máquina com Windows 10 Fall Creators 64 bits.

Nada de precisar modo de compatibilidade.
Nada de executar como administrador.
Nada de problema com antivírus ao compactar.

Nota:
Já postei muitas vezes no fórum.
Quem anda com problemas, convém testar.
Criei antes de existir no HBMK2, e nunca troquei, continuo usando até hoje.
Então não sei dizer se é melhor ou pior do que o criado pelo HBMK2.

Também resolveu o problema do fivedit, editor do fivewin. (pelo menos no meu teste, não sei se já faz parte do oficial).

Nota2:
Pra quem não sabe, além da opção de embutir no EXE, é só criar um arquivo em separado com o nome do EXE, exemplo: test.exe.manifest
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

Arquivo Manifest

Mensagem por asimoes »

Quintas, onde está o arquivo manifest queria testar

Ops, foi mal é do harbour
►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

Arquivo Manifest

Mensagem por JoséQuintas »

A última "colocada" foi no post do fivedit, incluindo o teste prático do próprio fivedit.

https://pctoledo.org/forum/viewto ... =2&t=15869
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

Arquivo Manifest

Mensagem por JoséQuintas »

Em todo caso, como arquivo externo, que é o mesmo conteúdo:
manifest.zip
(742 Bytes) Baixado 228 vezes
Apenas palpite: Eu acho que "as invoker" não necessita privilégios a mais, e por isso a segurança não bloqueia.

Esta parte

Código: Selecionar todos

<security>
<requestedPrivileges>
<requestedExecutionLevel
               level="asInvoker"
               uiAccess="false"
            />
</requestedPrivileges>
</security>
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

Arquivo Manifest

Mensagem por asimoes »

Quintas,

Eu só me interessei mesmo pelo manifest, acabei achando a definição do manifest no harbour.rc na pasta pakage

Eu queria ver esse manifest que você tá usando. tem como posta aqui ?

Ops, você é rápido no gatilho, rs
►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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Quintas,

Não funcionou o seu manifest olha o que acontece.

Compila normal, mas quando executa:
2018-03-31 22_56_15-h-CEPJASON.png
2018-03-31 22_56_15-h-CEPJASON.png (10.87 KiB) Exibido 3306 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)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Arquivo Manifest

Mensagem por JoséQuintas »

Que estranho, é o que uso faz anos.

Ou... o mesmo componente que impede de compactar também impede de usar esse manifest.
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/
gilbertosilverio
Usuário Nível 3
Usuário Nível 3
Mensagens: 339
Registrado em: 18 Jan 2009 10:39
Localização: Ribeirao Pires - SP

Arquivo Manifest

Mensagem por gilbertosilverio »

Quintas, Simões,

A titulo de curiosidade, testei aqui este manifest, e funcionou com HB34+MINGW7.2+HWGUI, ficou muito bonita a tela no W10.

Ja com xHB1.10+BCC55+HWGUI, deu a mesma mensagem do Simões...
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Informações:

O meu windows é 10 Pro
Versão 1709
Compilação 16299.309

Sobre a compilação que eu fiz ( sem compactação)
MinGW GNU C 7.3 (32-bit) (versão atual do msys)
Harbour 3.4.0dev (da55042) (2017-12-21 20:50)

Código: Selecionar todos

hbmk2: Processando script local make: hbmk.hbm
hbmk2: Harbour: Compilando módulos...
Harbour 3.4.0dev (da55042) (2017-12-21 20:50)
Copyright (c) 1999-2017, https://github.com/vszakats/harbour-core/
Compiling 'DEMO.PRG'...
Lines 1417, Functions/Procedures 8
Generating C source output to 'OBJMINGWFORK\DEMO.c'... Done.
hbmk2: Compilando recursos...
hbmk2: Compilando...
hbmk2: Linkando... DEMO.exe
Criei um arquivo rc para testar
demo.rc

1 24 vb6.exe.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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Esse problema pode ser a versão do mingw, apesar de estar usando a versão indicada pelo Viktor que é a do MSYS
►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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Quintas,

Achei essa informação sobre: Windows 10 - Falha na inicialização do aplicativo devido à configuração lado a lado incorreta
quando uso o seu arquivo manifest

https://answers.microsoft.com/pt-br/win ... 1bd23c784e
►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

Arquivo Manifest

Mensagem por JoséQuintas »

Procurei mais detalhes, e é o que comentei mesmo:

Dependency:

As dependências, por exemplo liberar os controles comuns do Windows versão 6.00

TrustInfo:

asInvoker - nenhuma permissão adicional
highestAvailable - permissões máximas
requireAdministrator - permissão de administrador

Compatibility:

Em que versões Windows funciona

https://www.finalbuilder.com/resources/ ... fest-files
http://www.samlogic.net/articles/manifest.htm
https://msdn.microsoft.com/pt-br/librar ... s.85).aspx

Voltamos aos componentes opcionais, que devem exigir nível de segurança superior, ou não devem ter manifest e o Windows assume isso.
Lembrando que, dependendo de como a DLL é inclusa no programa, ela passa a fazer parte dele.
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

Arquivo Manifest

Mensagem por asimoes »

Segui as instruções do link da microsoft desinstalei os microsoft visual c++, instalei a versão recomendada para x64 mas não funcionou.

Esse é o harbour.rc que tem requestedExecutionLevel

Código: Selecionar todos

/* Copyright 2011-present Viktor Szakats (vszakats.net/harbour) */

#if !( defined( OS2 ) || defined( __OS2__ ) || defined( OS_2 ) )

#include "hbver.h"

#if defined( _HB_INCLUDE_ICON ) && \
    ! defined( __BORLANDC__ ) && ! defined( UNDER_CE )
1 ICON DISCARDABLE "../package/harbour.ico"
#endif

/* NOTE: BCC 5.5 has an RC preprocessor bug that in certain cases will append
         a trash byte to the return value of this macro. Such trash byte
         will result in a broken manifest record and the executable rejected
         by the OS (e.g. Windows 10) to run. It can be "fixed" by using
         a macro name shorter or longer by one character. But, instead of
         such non-zero-cost hacks, please switch to a modern compiler. */
#define HB_MACRO2STRING( macro )   HB_MACRO2STRING_( macro )
#define HB_MACRO2STRING_( macro )  #macro

#define HB_VER_PROD                HB_VER_MAJOR,HB_VER_MINOR,HB_VER_RELEASE,0
#define HB_VER_PROD_STR            HB_MACRO2STRING( HB_VER_MAJOR ) "." HB_MACRO2STRING( HB_VER_MINOR ) "." HB_MACRO2STRING( HB_VER_RELEASE )
#define HB_VER_FILE                HB_VER_PROD
#define HB_VER_FILE_STR            HB_VER_PROD_STR

#define HB_NAME                    "SEBOL"

/* Version info */

#include <winver.h>

VS_VERSION_INFO  VERSIONINFO
FILEVERSION      HB_VER_FILE
PRODUCTVERSION   HB_VER_PROD
FILEFLAGSMASK    VS_FFI_FILEFLAGSMASK
FILEFLAGS        0
FILEOS           VOS__WINDOWS32
FILETYPE         VFT_APP
BEGIN
   BLOCK "StringFileInfo"
   BEGIN
      BLOCK "040904B0"  /* LANGUAGE: US English (0x0409), ENCODING: Unicode (1200/0x04B0) */
      BEGIN
         VALUE "Comments",         "See LICENSE.txt for licensing terms." "\0"
         VALUE "CompanyName",      HB_NAME "\0"
         VALUE "FileDescription",  HB_NAME "\0"
         VALUE "FileVersion",      HB_VER_FILE_STR HB_VER_STATUS "\0"
         VALUE "LegalCopyright",   "Copyright © 2008-present (see application banner)" "\0"
         VALUE "ProductName",      HB_NAME "\0"
         VALUE "ProductVersion",   HB_VER_PROD_STR HB_VER_STATUS "\0"
      END
   END
   BLOCK "VarFileInfo"
   BEGIN
      //VALUE "Translation", 0x0409, 0x04B0  /* LANGUAGE: US English (0x0409), ENCODING: Unicode (1200/0x04B0) */
      VALUE "Translation", 0x416, 0x4B0
   END
END

/* Manifest */

#if ! defined( HBMK_DYNLIB ) && ! defined( HB_DYNLIB )

/* String escaping rules:
      https://msdn.microsoft.com/library/aa381050
   Application Manifest doc, including the list of 'supportedOS Id's:
      https://msdn.microsoft.com/library/aa374191 */

#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID
#define CREATEPROCESS_MANIFEST_RESOURCE_ID  1
#endif
#ifndef RT_MANIFEST
#define RT_MANIFEST  24
#endif

CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST
BEGIN
   "<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>"
   "<assembly xmlns=""urn:schemas-microsoft-com:asm.v1"" manifestVersion=""1.0"">"
      "<assemblyIdentity name=""" HB_NAME """ version=""" HB_VER_PROD_STR ".0"" type=""win32""/>"
      "<application xmlns=""urn:schemas-microsoft-com:asm.v3"">"
         "<windowsSettings>"
            "<dpiAware xmlns=""http:" "//schemas.microsoft.com/SMI/2005/WindowsSettings"">true</dpiAware>"
         "</windowsSettings>"
      "</application>"
      "<trustInfo xmlns=""urn:schemas-microsoft-com:asm.v3"">"
         "<security>"
            "<requestedPrivileges>"
               "<requestedExecutionLevel level=""asInvoker"" uiAccess=""false""/>"
            "</requestedPrivileges>"
         "</security>"
      "</trustInfo>"
      "<dependency>"
         "<dependentAssembly>"
            "<assemblyIdentity name=""Microsoft.Windows.Common-Controls"" version=""6.0.0.0"" type=""win32"" processorArchitecture=""*"" publicKeyToken=""6595b64144ccf1df""/>"
         "</dependentAssembly>"
      "</dependency>"
      "<compatibility xmlns=""urn:schemas-microsoft-com:compatibility.v1"">"
         "<application>"
            "<supportedOS Id=""{e2011457-1546-43c5-a5fe-008deee3d3f0}""/>"  /* Vista / Server 2008 */
            "<supportedOS Id=""{35138b9a-5d96-4fbd-8e2d-a2440225f93a}""/>"  /* 7 / Server 2008 R2 */
            "<supportedOS Id=""{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}""/>"  /* 8 / Server 2012 */
            "<supportedOS Id=""{1f676c76-80e1-4239-95bb-83d0f6d0da78}""/>"  /* 8.1 / Server 2012 R2 */
            "<supportedOS Id=""{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}""/>"  /* 10 / Server 2016 */
         "</application>"
      "</compatibility>"
   "</assembly>"
END

#endif
#endif
►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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Enquanto não tem explicação, vou usando o harbour.rc
►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
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Arquivo Manifest

Mensagem por asimoes »

Quintas,

Descobri o erro, o problema está no seu arquivo manifest.

Tá repetindo:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

Removi uma linha repetida e funcionou.
►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)
Responder