- ProgressBar - Przez ShellExecute odpalam plik np. test.bat który wywołuje skrypt odpowiadający za spakowanie zipem jakiegoś katalogu. Jak do tego podpiąć ProgressBar. Czyli chce aby progressbar się ładował zgodnie z działaniem pliku *.bat. Raczej pewnie tego nie wychwycimy to może drugi sposób, może program niech sprawdzi czy dalej jest odpalony plik *.bat, jak nie to uzupełni progressbar. Jak sprawdzić czy coś jest jeszcze odpalone.
No dobrze, ale który program jest odpowiedzialny za pakowanie zipów? Być może on sam ma jakieś API, dzięki któremu zwraca procesowi-rodzicowi informacje o postępie. Problem tylko jest taki, że używasz skryptu, a nie programu archiwizującego bezpośrednio.
Ogólnie to nie za bardzo jest możliwość wygodnego podłączenia progressbara pod Twój proces pakowania. Możesz skorzystać z pipe'ów i przechwycić output konsoli, następnie go przeparsować, wyłuskać postęp (jeśli jest na bieżąco wyświetlany w konsoli) i na tej podstawie odpowiednio ustawić wartość paska postępu.
A najlepiej to zamiast korzystać z zewnętrznego programu do pakowania, użyj w swoim programie komponentu/klasy do obsługi archiwów. Wszystkie Twoje problemy rozwiążą się samoistnie, bo będziesz miał kontrolę nad całym procesem archiwizowania.
- TMemo - jak wylistować do TMEMO zawartość katalogu. Chce widzień w tmemo lub jakimś innym kompnencie zawartość katalogu
W sieci bez problemu znajdziesz gotowce – poszukaj.
- I ostatnie. Po utworzeniu pliku zip czyli takowego backupu chce dany plik wysłać na serwer poprzez FTP. To akurat proste, z tym że za każdym razem tworzy się plik o innej nazwie na podstawie daty. Tak więc dzisiaj plik nazywa się 02.02.2020.zip a jutro będzie to plik 03.02.2020. Jak teraz zautomatyzować procedurę wysyłania pliku przez ftp aby program wiedział który plik wysłać. Nie chce słać całego katalogu i nie chce aby cały czas plik zapisywał się w jednej nazwie bo chcę mieć co dziennie archiwizację.
To proste – najpierw określ docelową nazwę pliku na podstawie systemowej daty i zapisz ją do zmiennej pomocniczej, następnie stwórz archiwum, a na koniec wyślij plik na serwer. Podczas wykonywania dwóch ostatnich czynności – tworzenia archiwum i wysyłania pliku na serwer – użyj nazwy ze zminnej. Nic skomplikowanego.