Ademir Constantino
2013-05-19 20:27:51 UTC
Minha parcela de contribuição.
O Daniel enviou a unit DJ_Const.pas que utiliza o arquivo de tradução
embutida no LRS.
Porém, a função TranslateUnitResourceStrings extrai o arquivo e o grava
no disco.
Eu resolvi modificar de forma que o arquivo seja usado apena em memória
(Stream), então a função ficou assim:
function TranslateUnitResourceStrings_BR: Boolean;
var
LRes: TLResource;
PO: TPOFile;
SS: TStringStream;
B: Boolean;
begin
Result := False;
LRes := LazarusResources.Find('lclstrconsts.pt_BR','PO');
if LRes <> nil then
begin
SS := nil;
PO := nil;
try
SS := TStringStream.Create(LRes.Value);
PO := TPoFile.Create(SS, False);
try
B := Translations.TranslateUnitResourceStrings('lclstrconsts',PO);
if B then Result := True else Result := FAlse;
except
Result := False;
end;
finally
if Assigned(SS) then SS.Free;
if Assigned(PO) then PO.Free;
end;
end;
end;
Ademir
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
lazarus-br-/***@public.gmane.org
Para cancelar a sua inscrição neste grupo, envie um e-mail para
lazarus-br+unsubscribe-/***@public.gmane.org
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo "Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para lazarus-br+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
O Daniel enviou a unit DJ_Const.pas que utiliza o arquivo de tradução
embutida no LRS.
Porém, a função TranslateUnitResourceStrings extrai o arquivo e o grava
no disco.
Eu resolvi modificar de forma que o arquivo seja usado apena em memória
(Stream), então a função ficou assim:
function TranslateUnitResourceStrings_BR: Boolean;
var
LRes: TLResource;
PO: TPOFile;
SS: TStringStream;
B: Boolean;
begin
Result := False;
LRes := LazarusResources.Find('lclstrconsts.pt_BR','PO');
if LRes <> nil then
begin
SS := nil;
PO := nil;
try
SS := TStringStream.Create(LRes.Value);
PO := TPoFile.Create(SS, False);
try
B := Translations.TranslateUnitResourceStrings('lclstrconsts',PO);
if B then Result := True else Result := FAlse;
except
Result := False;
end;
finally
if Assigned(SS) then SS.Free;
if Assigned(PO) then PO.Free;
end;
end;
end;
Ademir
Segue o arquivo com algumas instruções extras no seu conteúdo...
Se alguém souber como subir para alguma área de downloads do Grupo
fiquem a vontade...
[]s Daniel
Conheça o Projeto ACBr - Automaçao Comercial Brasil
<http://acbr.sourceforge.net/>
DJSystem a Loja Patrocinadora do ACBr <http://www.djsystem.com.br/>
Olá Pessoal,
Consegui colocar as mensagens do aplicativo em pt-br com a dica do
Silvio (http://www.freepascal.com.br/viewtopic.php?f=16&t=397) da
mesma forma consegui traduzir o LazReport, no entanto lendo este
post do Daniel,
(http://br.dir.groups.yahoo.com/group/lazarus-brasil/message/5152)
entendi que é possivel embutir os arquivos "lclstrconsts.pt_BR.po"
e "lr_const.pt_BR.po" na executável por meio do Lazres. Já
pesquisei por mais de uma hora onde consigo baixar a unit
"DJ_Consts.pas" mas nada, também tentei no link
(http://br.dir.groups.yahoo.com/group/lazarus-brasil/message/5189)
mas não está mais ativo.
Alguém pode me dar a dica de como fazer isso?
Grato pela atenção de todos.
--
Cordialmente
Frota C. Júnior
www.apoio.eti.br <http://www.apoio.eti.br>
--
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
Para cancelar a sua inscrição neste grupo, envie um e-mail para
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo
"Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus
e-mails, envie um e-mail para
Para obter mais opções, acesse
https://groups.google.com/groups/opt_out.
--
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
Para cancelar a sua inscrição neste grupo, envie um e-mail para
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo
"Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
--Se alguém souber como subir para alguma área de downloads do Grupo
fiquem a vontade...
[]s Daniel
Conheça o Projeto ACBr - Automaçao Comercial Brasil
<http://acbr.sourceforge.net/>
DJSystem a Loja Patrocinadora do ACBr <http://www.djsystem.com.br/>
Olá Pessoal,
Consegui colocar as mensagens do aplicativo em pt-br com a dica do
Silvio (http://www.freepascal.com.br/viewtopic.php?f=16&t=397) da
mesma forma consegui traduzir o LazReport, no entanto lendo este
post do Daniel,
(http://br.dir.groups.yahoo.com/group/lazarus-brasil/message/5152)
entendi que é possivel embutir os arquivos "lclstrconsts.pt_BR.po"
e "lr_const.pt_BR.po" na executável por meio do Lazres. Já
pesquisei por mais de uma hora onde consigo baixar a unit
"DJ_Consts.pas" mas nada, também tentei no link
(http://br.dir.groups.yahoo.com/group/lazarus-brasil/message/5189)
mas não está mais ativo.
Alguém pode me dar a dica de como fazer isso?
Grato pela atenção de todos.
--
Cordialmente
Frota C. Júnior
www.apoio.eti.br <http://www.apoio.eti.br>
--
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
Para cancelar a sua inscrição neste grupo, envie um e-mail para
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo
"Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus
e-mails, envie um e-mail para
Para obter mais opções, acesse
https://groups.google.com/groups/opt_out.
--
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
Para cancelar a sua inscrição neste grupo, envie um e-mail para
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo
"Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
--
Você recebeu esta mensagem porque está inscrito no Grupo "Lazarus-BR"
nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
lazarus-br-/***@public.gmane.org
Para cancelar a sua inscrição neste grupo, envie um e-mail para
lazarus-br+unsubscribe-/***@public.gmane.org
Para ver mais opções, visite este grupo em
http://groups.google.com.br/group/lazarus-br?hl=pt-BR
---
Você está recebendo esta mensagem porque se inscreveu no grupo "Lazarus-BR" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para lazarus-br+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.