Função para gravar arquivos com nomes grandes
Moderador: Moderadores
- clodoaldomonteiro
- Usuário Nível 4

- Mensagens: 821
- Registrado em: 30 Dez 2006 13:17
- Localização: Teresina-PI
- Contato:
Função para gravar arquivos com nomes grandes
Olá!
No xHarbour tem alguma função para copiar ou ler arquivos com nome que tenha mais de 8 caracteres?
Para clipper tem a lib LNF que tem uma série de funções para tratamento de arquivos com nomes grandes.
Grato pela atenção.
No xHarbour tem alguma função para copiar ou ler arquivos com nome que tenha mais de 8 caracteres?
Para clipper tem a lib LNF que tem uma série de funções para tratamento de arquivos com nomes grandes.
Grato pela atenção.
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinho
Eu uso Fivewin e uso uma função para retornar o PATHname completo de um arquivo, para tal eu uso:
Acho que ela faz parte do Harbour e provavelmente possua parte contraria SFN2LFN() que transforma nomes curtos em longos.
Eu uso Fivewin e uso uma função para retornar o PATHname completo de um arquivo, para tal eu uso:
Código: Selecionar todos
...
cPathCompleto := LFN2SFN( "C:\Nome muito grande de pasta\arq.exe" )
...
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Dá pra fazer direto...
Código: Selecionar todos
a='clientes.dbf' // arquivo 8.3 existente
b='arquivo de clientes.dbf' // LFN
copy file (a) to (b)
use (b) excl new
dbedit()
quit- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinho
Pelo comando que voce passou não sei mas diretamente no DOS ou via comando RUN COPY voce deverá colocar o nome grande entre aspas:
RUN COPY clientes.dbf "arquivo de clientes".dbf
Faça os testes mas atenho a certeza de se funcionasse sempre não haveria o porque a biblioteca LFN.LIB fazer parte de nossa vidas.
Pelo comando que voce passou não sei mas diretamente no DOS ou via comando RUN COPY voce deverá colocar o nome grande entre aspas:
RUN COPY clientes.dbf "arquivo de clientes".dbf
Faça os testes mas atenho a certeza de se funcionasse sempre não haveria o porque a biblioteca LFN.LIB fazer parte de nossa vidas.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- clodoaldomonteiro
- Usuário Nível 4

- Mensagens: 821
- Registrado em: 30 Dez 2006 13:17
- Localização: Teresina-PI
- Contato:
Rochinha!
Então eu posso usar a mesma LNF.lib que uso no clipper?
O harbour vai assimilar ela normalmente?
Eolo!
Quer dizer que o comando COPY file TO do harbour usa os comando do DOS 32 bits quando compilamos?
Então eu posso usar a mesma LNF.lib que uso no clipper?
O harbour vai assimilar ela normalmente?
Eolo!
Quer dizer que o comando COPY file TO do harbour usa os comando do DOS 32 bits quando compilamos?
At. Clodoaldo Monteiro
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
Linguagens: Clipper / Harbour
Área de Atuação: Sistemas de gestão para Prefeituras Municipais
Fones: (86)3223-0653, 98859-0236
www.simplesinformatica.com.br
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Amiguinho
O que eu quiz dizer é que provavelmente a função LFN2SFN() seja do proprio Harbour, vale tentar, eu só não sei quais LIBs podem conte-la.
O que eu quiz dizer é que provavelmente a função LFN2SFN() seja do proprio Harbour, vale tentar, eu só não sei quais LIBs podem conte-la.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Clodoaldo,
Eu tb uso a LFN com o CLipper52 (que parece ser o único jeito de lidar com nomes acima de 8.3), mas não tinha nem tentado nada com o XHarbour.
Seu post me chamou a atenção e eu compilei e rodei o teste acima, só com o XHarbour (sem nenhuma 'LFN.lib'). Funciona normal. Por que funciona, não sei responder...
Eu tb uso a LFN com o CLipper52 (que parece ser o único jeito de lidar com nomes acima de 8.3), mas não tinha nem tentado nada com o XHarbour.
Seu post me chamou a atenção e eu compilei e rodei o teste acima, só com o XHarbour (sem nenhuma 'LFN.lib'). Funciona normal. Por que funciona, não sei responder...
