Centar za edukaciju-BiH



#1 16.05.2014 12:13
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Gzip arhiver
Ovaj gzip fajl je veoma dobar za programere jer se moze pozvati iz shela i radi veoma dobro.
Za pakiranje je dovoljno u shelu napisati:
gzip imefilea.tip
Ako zelimo raspaikari onda samo ovaj gzip.exe kopiramo pod imenom gunzip.exe
sada pozivamo:
gunzip imegzipfile.gz

Prilikom pakiranja ne ostavlja rapakirani file kao i prilikom raspakkiranja ne ostavlja gz file.

Mozete jos objasnjenja naci Ovdje

Prilozi:
Informacije o tipu datoteke za:zip  gzip.zip
Preuzimanja:287
Velicina datoteke:44.27 KB


Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#2 12.05.2015 13:38
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: Gzip arhiver
u potrazi sam za besplatnim arhiverom koji ce moci raditi iz shell komande vb6
isprobao sam navedeni program no nisam znao kako , ili to program nemoze, neznam a treba mi arhiviranje vise datoteka iste ekstenzije u gz file.
ono sto gzip radi a to je gzip imeFajla.ext > zipFajl.gz
meni je potrebno gzip *.ext > zipFajl.gz

sljedeci program koji sam skinuo je program D7zip.exe
sintaksa je sljedeca:
za komprimirat (zipovat): d7zip.exe -z data.bin -f *.bin
a za dekomprimirat(unzipovat): d7zip.exe -u data.bin -f *.bin

problem je sto neznam kako napisati shell jer mi ne prihvaca ovo sto sam ja napisao

Private Sub Command1_Click()
Shell App.Path & "\d7zip.exe -z data.bin -f *.bin"
MsgBox "Zipped"
End Sub

Private Sub Command2_Click()
Shell App.Path & "\d7zip.exe -u data.bin -f *.bin"
MsgBox "UnZipped"
End Sub

trazim pomoc za bilo koji arhiver? Unapred zahvaljujem.
zivot je moja domovina.
↑  ↓

#3 12.05.2015 15:31
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: Gzip arhiver
Jas imam so rar ako sakas e sega dali raboti so poveke datoteki ne znam treba da probam
↑  ↓

#4 12.05.2015 15:33
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: Gzip arhiver
eve ovde pogledaj imas za rar dosta primeri
Shell Rar
↑  ↓

#5 12.05.2015 21:40
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Re: Gzip arhiver
Evo ti ovaj 7za.exe.
Vjerujem da znas sa njim uraditi ali evo primjer:
shell 7za a imezipa.zi *.bmp

Prilozi:
Informacije o tipu datoteke za:zip  7za.zip
Preuzimanja:311
Velicina datoteke:325.42 KB


Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#6 13.05.2015 08:13
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: Gzip arhiver
7za a data.zip *.bin : sve datoteke ekstenzije bin spremi u data.zip
7za e data.zip -y : ektrakt data.zip bez pitanja za "overwrites"

sada idem isprobavat sa shell u vb6 pa se sigurno javim. negdje ce zapeti Grinning
zivot je moja domovina.
Ovaj post je ureden 1 puta. Posljednja izmjena 13.05.2015 08:23 od strane Avko. ↑  ↓

#7 13.05.2015 09:50
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: Gzip arhiver
Probaj da koristis ShellAndWait funcija za da znaes koga e zavrsen procesot isto mozes i progres bar da stavis za da e popregledno.
Eve ova stavi vo nekoj modul
PreuzmiIzvorni kôd (Visual Basic):
  1. Option Explicit
  2.  
  3. Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
  4. Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
  5. Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
  6.  
  7. Private Const SYNCHRONIZE = &H100000
  8. Private Const INFINITE = -1&
  9.  
  10. ' Start the indicated program and wait for it
  11. ' to finish, hiding while we wait.
  12. Public Sub ShellAndWait(ByVal program_name As String, ByVal window_style As VbAppWinStyle)
  13. Dim process_id As Long
  14. Dim process_handle As Long
  15.  
  16.     ' Start the program.
  17.    On Error GoTo ShellError
  18.     process_id = Shell(program_name, window_style)
  19.     On Error GoTo 0
  20.  
  21.     DoEvents
  22.  
  23.     ' Wait for the program to finish.
  24.    ' Get the process handle.
  25.    process_handle = OpenProcess(SYNCHRONIZE, 0, process_id)
  26.     If process_handle <> 0 Then
  27.         WaitForSingleObject process_handle, INFINITE
  28.         CloseHandle process_handle
  29.     End If
  30.  
  31.     Exit Sub
  32.  
  33. ShellError:
  34. Call MsgBox("PROBLEM SO PROCESOT  " & Err & "  " & Error, vbOKOnly + vbExclamation + vbApplicationModal + vbDefaultButton1, "")
  35. End Sub
↑  ↓

#8 13.05.2015 10:35
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: Gzip arhiver
Sad
Tovar za mene , čovek. Å¡to go napiÅ¡a ridot linii i Jas baram na toa kako tele vo Å¡arena vrata. AJde, ako ne ti preči napiÅ¡ete mi deka Jas go koristam so moite ona Å¡to mi treba .
Imam data.bin datoteka koJa ima kompresirana vo nego datoteki so ekstenziJa za otpadoci. Od glavnite formi se založi deka vašiot modul , kako?
za data.bin datoteka može da se napiše vaka:
Čadot strString kako String
strString = App.Path & " \ data.bin "
sega ḱe se Javite na vaÅ¡iot modul i raskomprimirao data.bin vo ista papka so upotreba progresbar koi veḱe imaat Forma1
Jas ne go razbiraat ona Å¡to process_id i process_handle
vie ne mora da doJde, koga ḱe se fati vaÅ¡eto vreme i koga sakate
zivot je moja domovina.
↑  ↓

#9 13.05.2015 12:20
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: Gzip arhiver
Slobodno pisuvaj na tvom jeziku ja te sve razumem ovo sa prevodom na google translate nije dobro.
E sad ovako.
Ne treba razumeti funkcija sta radi one e vec uradzena i testirana i oko nje prica e zavrsena tako da ne ulazimo u sustine funkcija.

Ti uradi sledece:
Stavi ovaj cod u neki modul.

I u tvoj cod na mesto gde koristis naredba Shell zameni ja sa ShelAndWait ovako na primer:

ShellAndWait "7za a data.zip *.bin", vbMinimizedNoFocus

E sad sta se desava da bolje razumes sta radi funkcija.

Ova funkcija zaustavi ce program odbosno (Program bice blokitran) dok se podatci pakuju ,a kad zavrsi proces sve vraca se vo normala.
To je dobro ako imas puno podatke koi trebas spakovati i za pakovajne treba vise vremena a u medzuvremenu da ne bi korisnik opet pokrenuo proces za pakovajne.

Naredba Shell mozes vise puta pozvati a program ne zna dali je predhodni proces zavrsio.
Ako nesto nije jasno pisi.

Za progres barom malo kasnije jer i ja ga nekoristim mozda ZXZ moze tu da pomozi malo.
↑  ↓

#10 13.05.2015 12:28
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: Gzip arhiver
I jos nesto od iskustva:
Kad radis pakovajne fajlove moras dobro napisati puteve odakle su fajlove na koja lokacija ide i gde se nalazi program so koi pakujes u tvom slucaju 7za.exe

Ja kod mene uvek i definiram kao stringove pred pocetka izvrsavakne procesa primer:
PreuzmiIzvorni kôd (Visual Basic):
  1.  Dim Program As String
  2.           Program = App.path & "\RAR.EXE"            ' treba da ima rar.exe vo istiot direktorium od ovaj program
  3.                Dim Fajlovi As String
  4.                        Fajlovi= App.path & "\Bazi\*.mdb"
  5.                  Dim VoRar As String
  6.                         VoRar= "C\Bazi.rar"
↑  ↓

Stranice (3):1,2,3

Sva vremena su GMT +01:00. Trenutno vrijeme: 7: 52 am.