Página 1 de 1
Tratamento de pastas Windows / Linux
Enviado: 09 Ago 2021 14:05
por Robson Davila
Boa tarde,
gostaria de saber se existe a possibilidade de tratamento de pastas de unidades, no caso, Windows.
ser reconhecido automaticamente no Linux.
Ex.:
no Windows: Q:\Teste\teste.txt
no Linux reconhecer dessa forma: /q/Teste/teste.txt
Claro, eu já teria essa pasta criada no servidor Linux, no caso, /q/Teste
Quando falo "reconhecer", digo o programa entender automaticamente o endereço da pasta, sem que eu tenha que alterar em todos os fontes.
Desde já agradeço pela atenção,
Robson D´Ávila
Tratamento de pastas Windows / Linux
Enviado: 09 Ago 2021 23:24
por Itamar M. Lins Jr.
Olá!
If lLinux
use /minha/pasta/meu/arquivo.dbf
else
use q:\minha\pasta\meu\arquivo.dbf
endif
Nos dois funciona.
Se vai usar 100% no Linux(compilar seu PRG) e 100% no Windows sem uso do SMB no Linux
Se usar LetoDBf
Basta if Leto_file("//localhost:2812/meuarquivo.txt") Tanto faz Linux ou Windows pq o servidor vai se virar para responder.
Saudações,
Itamar M. Lins Jr.
Tratamento de pastas Windows / Linux
Enviado: 09 Ago 2021 23:47
por Itamar M. Lins Jr.
Olá!
Tem como unificar usando cPS := hb_ps() que coloca a barra "/" ou "\" ele cuida disso. "Path Separator"
Só tá pegando mesmo a letra pois no Linux não existe isso. a:,c:,d:,... isso não existe.
Pode usar outro comando para saber se tem ou não letra. cCD := CurDrive()+":" //Current Driver
Se usar WINE(emulador) basta usar só a sintaxe do windows mesmo. Fica bem rápido também. Mas o uso em rede com muitos usuários já não é a melhor opção.
Pode dai criar suas funções AbreDb("meudbf.dbf") ou if ExisteArq("arquivo.txt")
Saudações,
Itamar M. Lins Jr.
Tratamento de pastas Windows / Linux
Enviado: 11 Ago 2021 16:02
por Robson Davila
Boa tarde, muito obrigado pelas respostas.
É, pelo que vi, terei que alterar nos fontes mesmo a definição dos arquivos que estão em pastas diferentes e ou unidades.
Sei que as unidades do Windows não são vistas no Linux da mesma forma, mas quem sabe existiria uma funcionalidade que entendesse automaticamente a unidade do Windows como uma pasta no Linux.
Já que não tem, é alterar para deixar o reconhecimento dos caminhos dos arquivos compatível entre as plataformas.
E fazendo os testes aqui, no Windows reconhece o arquivo com a barra padrão Linux, ou seja, com "/"
Já o contrário, no Linux utilizando "\" não funciona.
Tratamento de pastas Windows / Linux
Enviado: 11 Ago 2021 16:59
por Itamar M. Lins Jr.
Olá!
unidades do Windows não são vistas no Linux da mesma forma,
No Linux qualquer coisa é uma pasta.
No windows para compartilhar usa-se o protocolo SMB. Basta instalar no Linux o SAMBA para ver, ler, gravar as pastas do windows.
Inclusive pode usar o Linux como servidor de arquivos compartilhados via SAMBA. Eu mesmo não gosto pq SMB não tem segurança adequada, depois de compartilhada uma pasta no windows com um grupo qualquer pessoa do grupo pode apagar, alterar, danificar os arquivos.
Saudações,
Itamar M. Lins Jr.