abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 17:00 | IT novinky

    Europarlament podpořil pozměněnou verzi výjimky známé jako „chat control 1.0“ umožňující firmám skenovat soukromou komunikaci na internetu kvůli ochraně dětí před zneužitím. Pozměňovací návrhy přijaté europoslanci však počítají s tím, že z výjimky bude vyřazena šifrovaná komunikace. Výjimka přestala platit začátkem dubna poté, co se Evropský parlament a Rada EU nedokázaly shodnout na jejím prodloužení. Rada následně přijala

    … více »
    Ladislav Hagara | Komentářů: 5
    dnes 04:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.24 a Xwayland 24.1.13 řeší 2 bezpečnostní chyby.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Komunita

    Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za červen 2026. Vypíchnuta je vylepšená podpora Waylandu. Už není považována za experimentální. V příští verzi Linux Mintu, plánována je na Vánoce, bude běh Cinnamonu plně podporován na X11 i Waylandu. V květnu na vývoj Linux Mintu přispělo 611 dárců celkovou částkou 19 612 dolarů. Dalších 2 326 patronů přispělo na Patreonu celkovou částkou 5 334 dolarů.

    Ladislav Hagara | Komentářů: 3
    dnes 04:00 | Bezpečnostní upozornění

    V Linuxu v KVM byla nalezena a v upstreamu již byla opravena kritická zranitelnost Januscape aneb CVE-2026-53359. Root na hostovaném počítači (virtuální stroj) může obejít izolaci a získat plnou kontrolu nad hostitelským systémem (DoS útok nebo vzdálené spuštění kódu s právy roota). Na obou hlavních architekturách – Intel i AMD. Zranitelnost v Linuxu existovala téměř 16 let (od srpna 2010 do června 2026).

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | IT novinky

    Tribunál Soudního dvora Evropské unie dnes zamítl několik žalob, v nichž se americká společnost Apple ohrazovala proti pravidlům fungování velkých technologických společností na unijním trhu. Applu se nelíbilo, že jeho obchod s aplikacemi a operační systém iOS mají podléhat přísnějším povinnostem jen proto, že Brusel firmu považuje za takzvaného gatekeepera, tedy strážce přístupu.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | IT novinky

    Na WhatsAppu budou postupně v průběhu následujících měsíců zavedena uživatelská jména. Telefonní čísla tak mohou zůstat soukromá. Aktuálně si lze uživatelské jméno rezervovat.

    Ladislav Hagara | Komentářů: 3
    včera 11:11 | IT novinky

    Byl aktualizován TIOBE Index (Wikipedie). Programovací jazyk Rust se poprvé dostal do první desítky tohoto žebříčku popularity programovacích jazyků. Vede Python následovaný C, C++, Java, C#, …

    Ladislav Hagara | Komentářů: 0
    včera 01:55 | Nová verze

    Proton (Wikipedie), tj. fork Wine integrovaný ve Steamu umožňující na Linuxu hrát hry určené pouze pro Windows, byl vydán ve verzi 11.0-1. Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled všech podporovaných her na stránkách ProtonDB

    Ladislav Hagara | Komentářů: 0
    7.7. 20:44 | Zajímavý software

    Byly publikovány zdrojové kódy počítačové hry Unturned. Pro nekomerční účely. V plánu je přelicencování pod MIT. Hra Unturned je postavena nad multiplatformním herním enginem Unity.

    Ladislav Hagara | Komentářů: 1
    7.7. 15:55 | IT novinky

    První česká družice navržená a sestavená výhradně studenty se dostala na oběžnou dráhu Země. Družice KOSTKA, kterou vyvinul studentský tým YSpace z Vysokého učení technického v Brně (VUT), dnes odstartovala na palubě rakety Falcon 9 společnosti SpaceX v rámci mise Transporter-17 z kalifornské základny Vandenberg Space Force Base.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (16%)
     (25%)
    Celkem 2081 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: chyba při otevírání souboru "file.open(QIODevice::ReadOnly | QIODevice::Text)"

    9.8.2011 14:32 Milan Bača | skóre: 2 | Valašské Meziříčí
    chyba při otevírání souboru "file.open(QIODevice::ReadOnly | QIODevice::Text)"
    Přečteno: 283×
    Mohl by mi někdo prosím pomoct? Externím programem plním textový soubor, který si hlídám pomocí QFileSystemWatcher. Když se v něm něco objeví tak chci načíst všechny řádky a hned jej zase vymazat. Při prvním naplnění souboru, QFileSystemWatcher změnu souboru odchytí a spustí metodu checkFile(), která spustí metodu loadFile(STACK_FILE_PATH). A tady nastává chyba. Soubor se neotevře jen pro čtení a hned se vymaže. V logu se mi objeví "Proces nemá přístup k souboru, neboť jej právě využívá jiný proces.". Při dalším naplnění souboru už vše funguje jak má. Už opravdu netuším co dělám špatně. Mohl by mě někdo nakopnout správným směrem? děkuji
        QFileSystemWatcher *fileWatcher;
        fileWatcher = new QFileSystemWatcher(this);
        fileWatcher->addPath(STACK_FILE_PATH);
        connect(fileWatcher, SIGNAL(fileChanged(QString)), this, SLOT(checkFile()));
    
    void Controller::checkFile()
    {
        if (connectionState)
            fileSystem->loadFile(STACK_FILE_PATH);
    }
    
    void FileSystem::loadFile(const QString &fileName)
    {
        QFile file(fileName);
        QStringList pathsList;
        if (file.exists() && (file.size() > 0)) {
            if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
                emit newLog(tr("Čtení"));
                emit newLog(file.errorString());
            } else {
                QTextStream out(&file);
                while (!out.atEnd()) {
                    QString line = out.readLine();
                    pathsList << line;
                }
                emit newListForCheck(pathsList);
                file.close();
            }
    
            if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {
                emit newLog(tr("Výmaz"));
                emit newLog(file.errorString());
            } else {
                QTextStream in(&file);
                in << "";
                file.close();
            }
        }
    }
    

    Odpovědi

    9.8.2011 22:14 T.O.M. | skóre: 22 | blog: T.O.M.'s blog | Ostrava
    Rozbalit Rozbalit vše Re: chyba při otevírání souboru "file.open(QIODevice::ReadOnly | QIODevice::Text)"

    S QFileSystemWatcher můžeš narazit na spoustu problémů lišících se platformu od platformy. Mně se osvědčilo vždy na začátku slotu napojeném na fileChanged/directoryChanged cestu z "wočru" odebrat, provést co je třeba a na konci slotu cestu znovu přidat. Stávalo se mi v některých případech, že signál o změně přišel jen jednou. Možná to vyřeší tvůj problém s omezeným přístupem k souboru.

    Ještě pár tipů:

    while (!out.atEnd()) {
        QString line = out.readLine();
        pathsList << line;
    }
    bych nahradil za:
    while (file.canReadLine()) {
        QString line = out.readLine();
        pathsList << line;
    }
    a smazat obsah souboru jde lépe:
    if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) {
        emit newLog(tr("Výmaz"));
        emit newLog(file.errorString());
    } else {
        file.close();
    }

    31.8.2011 10:56 Milan Bača | skóre: 2 | Valašské Meziříčí
    Rozbalit Rozbalit vše Re: chyba při otevírání souboru "file.open(QIODevice::ReadOnly | QIODevice::Text)"
    Zdravím, odebrání cesty problém nevyřešilo, jen se objevuje náhodně.

    náhrada kódu
    while (!out.atEnd()) {
        QString line = out.readLine();
        pathsList << line;
    }
    
    za
    while (file.canReadLine()) {
        QString line = out.readLine();
        pathsList << line;
    }
    
    nefunguje, ale to mě zas tak netrápí jak to sledování souboru

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.