Este patch aborda uma série de problemas no RAD Studio 10.4, pertencentes ao Delphi Compiler, o RAD Studio IDE em geral e o novo Code Insight baseado em LSP em particular, além de exceções do C ++ Builder Android e alguns problemas de depurador.
A instalação deste patch requer uma instalação prévia do Patch # 1 (disponível separadamente em GetIt e no portal de download). A instalação deste patch é recomendada para todos os clientes RAD Studio 10.4. Observe que este patch é bastante grande para baixar (cerca de 190 MB).
O patch inclui instruções de instalação detalhadas como parte do Leiame. Leia as etapas com atenção (ou as etapas correspondentes nesta postagem do blog), pois o download do GetIt não instala o patch automaticamente. Você deve seguir as instruções para instalar. Apenas usar GetIt não é suficiente.
Table of Contents
Como baixar o patch 2
Recomendamos que você use GetIt no RAD Studio IDE para baixar o patch. O patch deve estar listado na página de boas-vindas no IDE e disponível na seção “Patches e hotfixes” do Gerenciador de pacotes GetIt, conforme descrito aqui:
Existe mais um patch, dependendo da sua edição. Você deve ver apenas um deles (Professional ou Enteprise e para personalidades diferentes), instale-o.
Nota: Instalar o Patch # 2 por meio do GetIt no IDE requer uma conexão com a Internet. Se você instalou o RAD Studio por meio do instalador offline (ISO), também pode precisar emitir o comando GetItCmd.exe -c = useonline (a menos que já tenha emitido o comando uma vez).
Você também pode baixar o patch através do novo portal de download, my.embarcadero.com, copiá-lo para a máquina de desenvolvimento, descompactar e seguir os mesmos passos de instalação.
No GetIt, depois de selecionar o Patch # 2 e pressionar o botão de instalação, ele solicitará que você aceite a licença RAD Studio (sob a qual foi lançada). Aceite a licença e comece o download. Isso vai levar algum tempo:
Como instalar o patch 2
Assim que o download for concluído, GetIt abrirá o arquivo leia-me e a pasta de download (veja abaixo). A instalação do Patch 2 precisa ser feita manualmente, pois GetIt apenas baixa o patch, não o instala.
O executável do patch é copiado junto com um arquivo ZIP para uma pasta como:
C: Usuários <nome> DocumentsEmbarcaderoStudio21.0CatalogRepository10.4Patch2xx-10R104_Patch2
A pasta é aberta automaticamente pela última ação GetIt. Agora, feche o RAD Studio 10.4 IDE (e também quaisquer outras versões anteriores do RAD Studio IDE que possam estar em execução) e a partir da pasta mencionada acima, execute o arquivo em lote patch2.bat.
Nota: As etapas de instalação a seguir podem disparar um aviso do software antivírus.
O processo requer elevação e continua mostrando as etapas e adicionando um arquivo de log detalhado à pasta de repositório do catálogo:
Como você pode ver na imagem acima, a instalação exibe alguns avisos (na verdade, 2) ao adicionar arquivos que estavam faltando na versão 10.4 original. Isso é esperado. As informações exibidas na tela também são registradas em um arquivo denominado patch.log na pasta Repositório do Catálogo para o patch.
No final do processo, a janela da linha de comando fecha e você pode reiniciar o IDE RAD Studio 10.4.
Verificando a instalação correta
Para verificar se o patch foi instalado com sucesso, você pode olhar o carimbo de data / hora dos arquivos substituídos, por exemplo getit270.bpl na pasta bin deve ter um carimbo de data / hora de julho de 2020 (em vez de maio de 2020 que a maioria dos arquivos tem).
Etapas de desinstalação
Caso você tenha problemas com o patch, pode removê-lo fechando o RAD Studio, abrindo a pasta de instalação do Repositório do Catálogo (a mesma pasta mencionada acima) e executando patch2uninstall.bat. Isso irá restaurar os arquivos de backup da versão original.
O processo de patch cria um backup dos arquivos substituídos em uma subpasta _patch_backup da pasta de instalação principal do RAD Studio. Para cada execução, ele cria uma subpasta com o carimbo de data / hora da instalação, que também inclui um arquivo install.log. Como alternativa para desinstalar o patch, você pode copiar manualmente os arquivos desta pasta de backup para a pasta BDS principal.
Somente depois de desinstalar o patch, você pode desinstalar o pacote do GetIt. Se você desinstalar o pacote do GetIt primeiro, ele removerá o download e o script de desinstalação, mas não o patch instalado. Nesse caso, você pode restaurar manualmente os arquivos da pasta de backup conforme indicado acima ou pode baixar o patch novamente e executar o arquivo em lote de desinstalação.
Lista de problemas relatados pelo cliente resolvidos no patch 2 10.4
RAD Studio 10.4 Patch # 2 aborda os seguintes problemas relatados pelo cliente no Portal da Qualidade Embarcadero ( https://quality.embarcadero.com ):
RSP-29628 VCL Grids bug
RSP-29560 [REGRESSION] Desalinhamento em TStringGrid, método StretchDraw em OnDrawCell
RSP-29412 Compilador gera código incorreto para if-then
RSP-29402 Delphi 10.4 TStringGrid.OnDrawCell bug
RSPGrordsDrawCell em TStridStrelling retângulo incorreto. imagem é desenhada na posição errada
RSP-29347 [DelphiLSP] IDE trava quando o formulário de exibição como texto é selecionado e está executando o servidor LSP
RSP-29310 Erro interno L891 ao vincular devido a tipos complexos baseados em registros com a classe var
RSP-29299 CODEGEN bug no gerenciado inicialização de campos, associados a novos operadores de gerenciamento.
RSP-29271 [DelphiLSP] Code Insight adiciona desnecessário () ao alterar procedimentos / funções
RSP-29256 Compiler gera código errado para função de template
RSP-29227 Valor de propriedade incorreto obtido do registro
RSP-29226 Violação de acesso com código de trabalho sob 10.2
RSP-29218 compilando biblioteca estática sob erro Android E4620 processamento recurso .fmx -2 gerado
RSP-29172 Violação de acesso ao abrir o License Manager
RSP-29142 GoTo instruções não funcionam
RSP-29136 Dialog constantemente aparece durante a depuração
RSP-29129 iOS App simplesmente trava com um TWebBrowser nele.
RSP-29127 Erro interno do compilador se você ignorar o resultado de uma função que retorna um registro genérico
RSP-29124 ICE E1812
RSP-28989 O gerenciador de licenças tem erro de violação de acesso quando eu clico em Licenças de estação de trabalho
RSP-28887 Espaço não conclui o preenchimento de código
RSP-28857 Padrão (T) gera código
inválido para registro gerenciado RSP-28821 [Regressão] Parâmetro TStringGrid.OnDrawCell Rect contém valores errados
RSP-28808 Página de diálogo de opções de projeto “Delphi Compiler” não está preenchida ao abrir a caixa de diálogo
RSP-28796 RVO para registros M: inicialização de variáveis locais
RSP-28761 [REGRESSION] E2154 Tipo ‘T’ precisa de finalização – não permitido no registro variante
RSP-28737 Erro do compilador ao inserir novas funções padrão de contagem de bits
RSP- 28735 Registros gerenciados que causam erro interno do compilador
RSP-28717 Pacote Delphi falha ao compilar
RSP-28701 Vincular visualmente em TDBGRID mata o IDE
RSP-28669 [BadCG] Parâmetros de registro M de valor: AddRefRecord impróprio
RSP-28659 RVO para registros M: atribuição a variáveis locais
RSP-28616 [BadCG] A atribuição de operador não deve permitir convenções de chamada não padrão
RSP-28615 [BadCG] Em a ausência de Inicializar, a finalização não é garantida para variáveis locais
RSP-28552 Geração de código ruim para variáveis de registro gerenciadas locais
RSP-28499 Opções – Ferramentas de tradução – Fonte – Corrompido?
RSP-28476 LSP ErrorInsight no painel Estrutura mostra apenas um pressionamento de tecla após o editor
RSP-28400 [BadCG] A atribuição de operador nem sempre é chamada para os campos
RSP-28372 [Regressão] Codegen inválido na função que retorna o tipo genérico
RSP-27268 C ++ Builder 10.3.3 Android Exceções
RSP-27251 Erro interno ao tentar inline com a otimização no
RSP-24079 A versão do pacote está corrompida
RSP-23403 Build for linux 64 erro
RSP-23024 O construtor da classe auxiliar de registro fornece um aviso do compilador sem sentido
RSP-22318 Verificação do tipo de ponteiro perdida quando o campo do objeto é um O compilador dynarray
RSP-21554 gera código incorreto para o tipo de registro parametrizado
RSP-21248 Const array dinâmico inesperadamente contém dados não inicializados
RSP-20372 Uma “referência à função” genérica corresponderá apenas à primeira de várias funções sobrecarregadas
RSP-19714 compilador Win32 – corrupção de memória com array helpers
RSP-18241 * .c source files, adicionado ao projeto C ++, foi adicionado à lista de arquivos DeploymentManager
RSP-18148 AV em TList <T> .Remove (compilador de 64 bits apenas)