Localizei uma falha quando utilizo a versão UNICODE, com as configurações:
SET LANGUAGE TO PORTUGUESE
SET CODEPAGE TO UNICODE
Salvo no arquivo ini os textos:
Fabrica de Cafe Brasil
Fábrica de Cafe Brasil
Fábrica de Café Brasil
Quando faço a leitura, o retorno é o seguinte:
Fabrica de Cafe Brasil
não tem acentos, retorno correto
Fábrica de Cafe Brasi
possui um acento, retorna um caracter a menos
Fábrica de Café Bras
possui dois acentos, retorna dos caracteres a menos
Vejam o código abaixo:
Code: Select all
* arquivo main.prg
#include <hmg.ch>
Function Main
SET LANGUAGE TO PORTUGUESE
SET CODEPAGE TO UNICODE
public pcFileIni := "config.ini"
public pcEmpresa := "Fabrica de Cafe Brasil"
public pcEmpresa1 := "Fábrica de Cafe Brasil"
public pcEmpresa2 := "Fábrica de Café Brasil"
public pcEmpresaNew := ""
public pcEmpresaNew1 := ""
public pcEmpresaNew2 := ""
ini_save()
ini_load()
Load Window Main
Main.Center
Main.Activate
Return
function ini_save()
BEGIN INI FILE pcFileIni
SET SECTION "config" ENTRY "business" TO pcEmpresa
SET SECTION "config" ENTRY "business1" TO pcEmpresa1
SET SECTION "config" ENTRY "business2" TO pcEmpresa2
END INI
return
function ini_load()
BEGIN INI FILE pcFileIni
GET pcEmpresaNew SECTION "config" ENTRY "business"
GET pcEmpresaNew1 SECTION "config" ENTRY "business1"
GET pcEmpresaNew2 SECTION "config" ENTRY "business2"
END INI
return
Vejam a imagem: