Página 1 de 1
Compactador via prompt.
Enviado: 24 Abr 2014 17:28
por Maurício Elias
Olá, boa tarde.
Eu utilizo o ARJ.EXE no meu Sistema para atualizar tabelas.
Mas no 64 bits creio que ele não vai funcionar.
Qual compac/descompac vcs me indicam prá utilizar no meu Sistema, via RUN ?
Estou compilando em Harbour modo console.
Compactador via prompt.
Enviado: 24 Abr 2014 18:54
por yugi386
Prezado Maurício,
Já existe o arj para 32 que roda em 64 bits. Faça o download direto do site do fabricante:
http://www.arjsoftware.com/files.htm
Mas você pode usar o próprio Harbour para criar arquivos ZIP.
Para Zipar:
https://github.com/harbour/core/blob/ma ... s/zipa.prg
Para descompactar:
https://github.com/harbour/core/blob/ma ... unzipa.prg
O ARJ não é gratuito para uso comercial:
http://www.arjsoftware.com/faq.htm#o1
Uma alternativa gratuita seria o 7ZIP que também pode ser usado via linha de comando:
http://linwin33.blogspot.com.br/2008/06 ... mando.html
att,
Yugi
Compactador via prompt.
Enviado: 24 Abr 2014 19:04
por Toledo
Maurício Elias escreveu:Estou compilando em Harbour modo console.
Maurício, porque você não faz a compactação/descompactação dentro do seu programa mesmo, com o Harbour você pode fazer isto, veja um exemplo:
Código: Selecionar todos
/****************************************
* Compilar: hbmk2 demozip.prg -lhbziparc -lhbmzip -lminizip
****************************************/
PROCEDURE Main()
LOCAL cTipo := "1"
LOCAL cDestino:=left("C:\"+CurDir()+spac(100),100)
LOCAL cOrigem:=left("C:\"+CurDir()+"\*.DBF"+spac(100),100)
LOCAL cSenha:=SPAC(10)
LOCAL aArq:={}
LOCAL c_ExtArq:="bck" //extensao do arquivo que sera criado
CLS
SETMODE(25,80)
DO WHILE .T.
@ 5, 1 TO 13, 78
@ 10,2 SAY REPL("-",76)
@ 12,3 say REPL(".",74)
@ 6,23 SAY "(1-Backup/2-Restaura)"
@ 6, 3 SAY "Tipo............:" GET cTipo VALID (cTipo$[12])
READ
IF LASTKEY()=27
EXIT
ENDIF
IF cTipo="2"
cOrigem:=left("C:\"+CurDir()+"\backup."+c_ExtArq+spac(100),100)
ENDIF
@ 7, 3 SAY "Arquivo Origem..:" GET cOrigem PICT "@S56"
@ 8, 3 SAY "Drive Destino...:" GET cDestino PICT "@S56"
@ 9, 3 SAY "Senha...........:" GET cSenha PICT "@!"
READ
IF LASTKEY()=27
EXIT
ENDIF
IF !FILE(ALLTRIM(cOrigem))
Alert("Arquivo "+ALLTRIM(cOrigem)+";Nao encontrado!")
LOOP
ENDIF
IF RIGHT(ALLTRIM(cDestino),1)!="\"
cDest:=ALLTRIM(cDestino)+"\NUL"
cArqZip:=ALLTRIM(cDestino)+"\backup."+c_ExtArq
ELSE
cDest:=ALLTRIM(cDestino)+"NUL"
cArqZip:=ALLTRIM(cDestino)+"backup."+c_ExtArq
ENDIF
IF !FILE(cDest)
Alert("O Drive "+ALLTRIM(cDestino)+";Nao encontrado!")
LOOP
ENDIF
IF cTipo="1"
aArq:={}
IF "*" $ cOrigem
aDir1 := directory(ALLTRIM(cOrigem))
vPasta:= LEFT(cOrigem,RAT("\",cOrigem))
for x=1 to len(aDir1)
aadd(aArq,vPasta+aDir1[x,1])
next
ELSE
aadd(aArq,ALLTRIM(cOrigem))
ENDIF
nTotal:=Len(aArq)
hb_zipfile( cArqZip,aArq, 9,{|cFile,nPos| eProgresso( cFile, nPos,nTotal) },.t.,ALLTRIM(cSenha),.F.,.F., )
ELSE
cDest:=ALLTRIM(cDestino)
IF RIGHT(ALLTRIM(cDestino),1)!="\"
cDest+="\"
ENDIF
aArq:=hb_GetFilesInZip(ALLTRIM(cOrigem))
nTotal:=Len(aArq)
hb_UnzipFile( ALLTRIM(cOrigem),{|cFile,nPos| eProgresso( cFile, nPos,nTotal) },,ALLTRIM(cSenha),cDest,aArq)
ENDIF
EXIT
ENDDO
RETURN
************************************
Function eProgresso(vtxt,xPerc,wTot)
************************************
Local nPre:=(xPerc*100)/wTot,;
nBar:=(nPre*74)/100
@ 11,3 say "Concluido..: "+str(nPre,3,0)
@ 11,21 say "Arquivo: "+LEFT(vtxt+SPAC(40),44)
@ 12,3 say REPL("X",INT(nBar))
return nil
Abraços,
Compactador via prompt.
Enviado: 25 Abr 2014 09:11
por Maurício Elias
Obrigado pelas dicas pessoal. Vou fazer meus testes aq...
Compactador via prompt.
Enviado: 20 Mai 2014 04:03
por rochinha
Amiguinho,
Se voce estiver usando Windows, não precisa se preocupar com WinRAR, 7Zip, etc.
Pelo menos no Windows Server 2003, Windows Seven e Windows Server 2008, os quais uso constantemente voce pode usar o comando ZIP.
Na pasta SYSTEM32 do Windows te um executável chamado zip.exe
Digite zip no prompt do DOS para ver a sintaxe.
Compactador via prompt.
Enviado: 21 Mai 2014 21:52
por billy1943
Oi, Rochinha
No meu Windows 7 Ultimate não existe o ZIP.EXE.
Mas como sou da "turminha mais antiga" eu tenho a dupla PKZIP/PKUNZIP da PKWare versão 2.04g (1993), ARJ versão 2.50a (1995), sem contar o mais recente 7z.
Eles funcionam muito bem e fica fácil explicar para os mais leigos, como compactar arquivos, principalmente com o melhor deles, no meu entender, o ARJ.
Compactador via prompt.
Enviado: 06 Jul 2016 19:20
por Mário Isa
eu tenho a dupla PKZIP/PKUNZIP da PKWare versão 2.04g (1993)
mas eles funcionam em 64 bits ??
Compactador via prompt.
Enviado: 06 Jul 2016 20:58
por rochinha
Amiguinhos,
mas eles funcionam em 64 bits ??
Não.
Use o RAR.EXE, exemplo:
RAR a -ep -df meuarquivo.rar c:\pastadearquivos\*.*
ou
RAR a -ep -df meuarquivo.zip c:\pastadearquivos\*.*
Para descompactar:
RAR e meuarquivo.rar
Compactador via prompt.
Enviado: 06 Jul 2016 22:22
por Mário Isa
Windows não reconhece o MeuArquivo.Zip (como um arquivo .ZIP) produzido por este comando...
o Winrar (rar.exe) produz um arquivo do tipo .RAR ...
mas se quiserem podem baixar o
http://www.stoq2000.com/zip.rar
dentro dele tem o zip.exe
e, para fabricar o verdadeiro .zip sigam esse exemplo:
exemplo:
zip a -tzip teste *.txt
e ele produzirá o teste.zip com todos os .txt daquela pasta que você estiver executando o comando.
ah! aquela cláusula -df deletava os arquivos após compactar né ?
:-Y
Compactador via prompt.
Enviado: 06 Jul 2016 22:43
por rochinha
Amiguinhos,
ah! aquela cláusula -df deletava os arquivos após compactar né ?
Putz, desculpa ai, meu querido. Espero que tenha feito backups.
Passei a usar o
RAR.EXE nos meus batch´s porque o
PKZIP não ia bem com o Windows Seven 64bits. Usei este recurso em meu
MyPOOR SVN - Controle de versão muito simples para salvar cópias das alterações em forma de histórico.
Mas não gostei de usar 64bits para desenvolver, principalmente porque ainda uso o
rMake.exe. Ainda não me dei bem com os novos maker´s nem IDE´s automatizados.
Mas é muito útil termos ferramentas que nos fazem
verbalizar, e o
ZIP faz isso: Eu zipo, tú zipas, nós zipamos, ...
Compactador via prompt.
Enviado: 07 Jul 2016 00:27
por Mário Isa
Que tal usar a máquina virtual ?
http://www.superdownloads.com.br/downlo ... rtual-box/
Com ela vc pode ter o 64 bits e rodar, dentro da máquina, o windows xp, ou o vista 32 bits....
Mas precisa ter memória .... não pode ser só uma "vaga lembrança" ... :-´
Compactador via prompt.
Enviado: 07 Jul 2016 13:12
por rochinha
Amiguinhos,
Que tal usar a máquina virtual ?
Eu estava fazendo isto. Tenho uma VHD com Windows Server 2003 acessando as pastas reais de trabalho. Nela inclusive tinha outros softwares para desenvolvimento como Visual Studio, Android SDK e outros. Esta VHD era acessada pelo Virtual PC 2007 R1, pois apesar de ser Windows Seven 64 não gostei de usar a maquina de modo de compatibilidade nem o Hyper-V.
O grande problema para nós desenvolvedores é encontrar o state-of-art para o dia-a-dia. Sempre me dei muito bem com o Windows Server 2003 e 2008. Tem tudo que eu preciso como segurança, leveza, acesso remoto multi, etc.
O fato de precisarmos desenvolver para 64bits, etc não necessita que programemos nesta plataforma e sim que o nosso resultado seja homologado nesta nova plataforma.
E pra falar a verdade temos as melhores ferramentas em nossas mãos inclusive para recriar as ferramentas que usamos.
Com pouco trabalho poderemos criar nosso próprio ZIPador em Harbour e portátil para várias plataformas.
O grande mau do programador é ter os mais variados tipos de chave de fenda, mas ainda assim querer criar uma nova.
Ká, Ká, Ká.
Compactador via prompt.
Enviado: 07 Jul 2016 19:30
por JoséQuintas
O winrar pode ser usado pelo programa, tem também o lha32.exe.
Mas se dá pra fazer pelo Harbour, melhor deixar resolvido de vez.
E o ZIP fica compatível com Windows !!! Não vai precisar descompactador instalado além do próprio Windows.