ironheadMedlem sedan mars 20011 346 inlägg Hej!
Jag komprimerar filer med hjälp av denna rutin:
Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()
myProcess.StartInfo.FileName = "rar.exe"
myProcess.StartInfo.Arguments = "a -r c:\Temp\fil.rar c:\Test"
myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden
myProcess.EnableRaisingEvents = True
myProcess.Start()
myProcess.WaitForExit()
myProcess.Close()
myProcess.Dispose()
Nu skulle jag vilja aktivera en progressbar, så jag kan visa för användaren hur lång tid det tar att komprimera filerna. Hur kan man göra det? Alltså, hur skickar jag till från denna externa fil information till progressbaren?
erkaMedlem sedan dec. 19996 522 inlägg ironheadMedlem sedan mars 20011 346 inlägg Själva progressbaren vet jag hur den fungerar, men hur anropar jag den undertiden jag packar upp filen med detta tredjepartsprogram?
Eller måste jag ta till en lösning som "streamar" filen?!
PhorpherMedlem sedan feb. 20002 300 inlägg
ironhead skrev:
Själva progressbaren vet jag hur den fungerar, men hur anropar jag den undertiden jag packar upp filen med detta tredjepartsprogram?
Eller måste jag ta till en lösning som "streamar" filen?!
Du måste få någon typ av indikation på hur lång tid det kommer att ta för tredjepartsprogrammet att exekvera. Eller en indikation på hur lång tid det gått i exekveringen. Annars kan du aldrig visa någon progressbar som kommer att stämma.
ironheadMedlem sedan mars 20011 346 inlägg
Phorpher skrev:
Du måste få någon typ av indikation på hur lång tid det kommer att ta för tredjepartsprogrammet att exekvera. Eller en indikation på hur lång tid det gått i exekveringen. Annars kan du aldrig visa någon progressbar som kommer att stämma.
Ja, kan man på något sätt få det att fungera?
Jag har en ide.
Ta storleken på urpsrungsfilen, sedan får du själv på något sätt räkna ut ungefär hur storleken på målfilen kommer att bli sedan jämför du det med hur stor målfilen är lite då och då.
ironheadMedlem sedan mars 20011 346 inlägg
Nickemannen skrev:
Jag har en ide.
Ta storleken på urpsrungsfilen, sedan får du själv på något sätt räkna ut ungefär hur storleken på målfilen kommer att bli sedan jämför du det med hur stor målfilen är lite då och då.
Ja, det låter rimligt...har fått tag på hur stor filerna är okomprimerade...kan också på ett ungefär räkna ut hur stor de blir....men hur i hela friden gör jag för att då och då byta ur min funkion för att kolla storleken?
Kan man använda FileSystemWatcher Klassen eller hur gör man det smidigast?
emissionMedlem sedan dec. 19996 721 inlägg Annars borde du kunna visa det som rar.exe spottar ur sig, fast i din egen applikation. RedirectStandardOutput, liksom.
Spottar den ur sig information är det självklart bäst att ta den informationen som emission säger då är min ide värdelös.
ironheadMedlem sedan mars 20011 346 inlägg Hur kan man använda RedirectStandardOutput?