Я закончил свое первое приложение 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. Исправлена перезагрузка.
На самом деле, простая перезагрузка решена проблема – Fabian