2010-11-14 4 views
1

Я закончил свое первое приложение Qt и заметил, что конструктор QApplication в файлах main.cpp занимает до 10 секунд для выполнения. Это приводит к раздражающей задержке запуска, когда я даже не могу показать заставку.Конструктор QApplication (Qt) занимает до 10 секунд

При профилировании этой задержки выясняется, что метод initializeMultitouch_sys в классе QApplicationPrivate является виновником. В частности, вызов iInkTablets-> get_Count (...) занимает все время.

void QApplicationPrivate::initializeMultitouch_sys() 
{ 
    [...] 
    IInkTablets *iInkTablets = 0; 
    HRESULT hr = CoCreateInstance(QT_CLSID_InkTablets, NULL, CLSCTX_ALL, QT_IID_IInkTablets, (void**)&iInkTablets); 
    if (SUCCEEDED(hr)) { 
     long count = 0; 
     iInkTablets->get_Count(&count); // <== Takes 5-10 seconds!! 
     for (long i = 0; i < count; ++i) { 
     [...] 
    } 
} 

Я использую Windows 7, но не использую функцию multi-touch. Любая идея, что вызывает эту проблему и как я могу ее избежать?

Спасибо, Fabian

UPDATE 2010-11-14 - задача, решаемая

Я заметил, что проблема то произошло со всеми приложениями на основе Qt, включая Qt Designer. Исправлена ​​перезагрузка.

ответ