Compatibilidade Borland Quick Report 5 com Windows 7

Em um dos trabalhos realizados para garantir a compatibilidade de aplicações no Windows 7, diagnostiquei uma aplicação que exibia apenas as duas primeiras de um relatório e que gerava o erro “Metafile is not valid” quando o usuário tenta navegar entre as páginas do relatório. A aplicação também ignorava a requisição de imprimir o relatório.

Com a ajuda do Process Monitor (PROCMON) foi possível identificar que o erro era decorrente de um OVERFLOW que ocorria quando a aplicação tentava armazenar o valor da variável de ambiente TMP. A aplicação espera o valor “C:\TEMP” ao contrário do valor “%USERPROFILE%\AppData\Local\Temp“ retornado pelo Windows 7.

Solução

Em cenários em que o cliente não possui o código-fonte, a solução é alterar o valor da variável de ambiente de usuário TMP de “%USERPROFILE%\AppData\Local\Temp” para “C:\TEMP”, conforme indicado abaixo: