Ĺadny brzuch
Mam jeszcze jedno pytanie odnośnie Qt. O ile poradziłem sobie z lista, to teraz chce, aby mi ten program zainstalowal pakiet RPM za pomocą urpmi (zeby nie bylo problemu z zaleznosciami). Napisalem takie cos jako zdarzenie do jednego z przyciskow:
void Form1::zainstaluj() { int ilpak; int pasek=0; char nazwa[60]; pakiety.open("/home/dandys/Desktop/pakiety.lst"); pakiety >> ilpak; proces = new QProcess( this ); proces->addArgument( "urpmi"); pakiety.getline(nazwa, sizeof(nazwa), '\n'); proces->addArgument(nazwa); if(proces->start()) { pasek+=100/ilpak; progressBar1->setProgress(pasek); } pakiety.close(); }
Plik "pakiety.lst" wygląda następująco:
1
/home/dandys/Desktop/opera.rpm
Gdzie pierwsza linijka oznacza ilość pakietów (na razie nie przewidziałem jeszcze możlwiości instalacji kilku na raz, wiec nie ma to znaczenia), a druga okresla dokladna sciezke do pliku RPM, ktory chce zainstalowac. Program ten oczywiście uruchamiam z roota, jednak pasek postępu nie zwiększa się (co oznacza, że wystąpił jakiś błąd przy uruchamianiu). Co tym razem robię źle?
Użytkownik dandys997 edytował ten post 10 październik 2005, 07:50
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
void Form1::zainstaluj() { int ilpak; int pasek=0; char nazwa[60]; pakiety.open("/home/dandys/Desktop/pakiety.lst"); pakiety >> ilpak; proces = new QProcess( this ); proces->addArgument( "urpmi"); pakiety.getline(nazwa, sizeof(nazwa), '\n'); proces->addArgument(nazwa); if(proces->start()) { pasek+=100/ilpak; progressBar1->setProgress(pasek); } pakiety.close(); }
Plik "pakiety.lst" wygląda następująco:
1
/home/dandys/Desktop/opera.rpm
Gdzie pierwsza linijka oznacza ilość pakietów (na razie nie przewidziałem jeszcze możlwiości instalacji kilku na raz, wiec nie ma to znaczenia), a druga okresla dokladna sciezke do pliku RPM, ktory chce zainstalowac. Program ten oczywiście uruchamiam z roota, jednak pasek postępu nie zwiększa się (co oznacza, że wystąpił jakiś błąd przy uruchamianiu). Co tym razem robię źle?
Użytkownik dandys997 edytował ten post 10 październik 2005, 07:50