Welcome, Guest. Please login or register.
Did you miss your activation email?

Author Topic: QPrinter crash  (Read 3907 times)

alexlpn

  • Newbie
  • *
  • Posts: 2
    • View Profile
QPrinter crash
« on: September 26, 2020, 09:24:52 pm »
Добрый день. Уже долгое время бьюсь с проблемой генерации pdf через QPrinter на своём компьютере, думал что LimeReport спасёт ситуацию, а оказалось, что нет.

В частности, при исполнении программа завершается. Стэк следующий:
Code: [Select]
1  ntdll!RtlIsNonEmptyDirectoryReparsePointAllowed                                                                0x7ffe0b5791b3
2  ntdll!RtlpNtMakeTemporaryKey                                                                                   0x7ffe0b5815e2
3  ntdll!RtlpNtMakeTemporaryKey                                                                                   0x7ffe0b5818ea
4  ntdll!RtlpNtMakeTemporaryKey                                                                                   0x7ffe0b58a8a9
5  ntdll!memset                                                                                                   0x7ffe0b52646d
6  ntdll!RtlReAllocateHeap                                                                                        0x7ffe0b4c60b9
7  ntdll!RtlGetCurrentServiceSessionId                                                                            0x7ffe0b4c22f6
8  ntdll!RtlGetCurrentServiceSessionId                                                                            0x7ffe0b4c0790
9  ntdll!RtlFreeHeap                                                                                              0x7ffe0b4bfb91
10 ntdll!RtlpNtMakeTemporaryKey                                                                                   0x7ffe0b5853c9
11 ntdll!memset                                                                                                   0x7ffe0b535670
12 ntdll!RtlGetCurrentServiceSessionId                                                                            0x7ffe0b4c0790
13 ntdll!RtlFreeHeap                                                                                              0x7ffe0b4bfb91
14 msvcrt!free                                                                                                    0x7ffe09dd9cfc
15 QPageSize::operator=(QPageSize const&)                                                                         0x1348381     
16 QWindowsPrintDevice::defaultPageSize() const                                                                   0x6f882ece     
17 QPrintDevice::defaultPageSize() const                                                                          0x6df43efd     
18 QWin32PrintEngine::QWin32PrintEngine(QPrinter::PrinterMode, QString const&)                                    0x6df528b2     
19 QWindowsPrinterSupport::createNativePrintEngine(QPrinter::PrinterMode, QString const&)                         0x6f88169a     
20 QPrinterPrivate::initEngines(QPrinter::OutputFormat, QPrinterInfo const&)                                      0x6df4a523     
21 QPrinterPrivate::init(QPrinterInfo const&, QPrinter::PrinterMode)                                              0x6df4a70e     
22 QPrinter::QPrinter(QPrinter::PrinterMode)                                                                      0x6df4a818     
23 LimeReport::ReportEnginePrivate::ReportEnginePrivate                                   lrreportengine.cpp 81   0x188282b     
24 LimeReport::ReportEngine::ReportEngine                                                 lrreportengine.cpp 1378 0x188b8f7     
25 MainWindow::MainWindow                                                                 mainwindow.cpp     6    0x4019e8       
26 qMain                                                                                  main.cpp           8    0x4015a9       
27 WinMain                                                                                qtmain_win.cpp     97   0x403b70       
28 __tmainCRTStartup                                                                                              0x4013c7       
29 WinMainCRTStartup                                                                                              0x4014cb       
Сама программа примитивна и отличается от "пустой" widget application двумя строчками
Code: [Select]
#include <LimeReport>и
Code: [Select]
LimeReport::ReportEngine m_report;
Сама ошибка вылазиет при вызове конструктора
Code: [Select]
new QPrinter(QPrinter::HighResolution))Мне кажется, что проблема где-то "глубоко" и возможно связана с ОС. Опирается ли QPrinter на стандартный pdf принтер ОС? Встречалась ли кому такая ошибка еще?

Проверил demo_1 - таже ситуация, аналогичный стэк.

Буду очень признателен за помощь.
Спасибо

Windows 10 64, Qt 5.14.1, MinGW 64
« Last Edit: September 26, 2020, 09:27:58 pm by alexlpn »

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: QPrinter crash
« Reply #1 on: September 28, 2020, 05:18:18 pm »
Приветствую!
А если запустить бинарники с sourceforge, тот же эффект?

alexlpn

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: QPrinter crash
« Reply #2 on: October 04, 2020, 01:14:51 pm »
Arin, спасибо за совет. Попробовал запустить бинарник LRDemo_r2 и сгенерировать pdf. Всё работает, документ генерируется и открывается просмотрщиком, сам клиент не падает.

Получается, что ошибка где-то в компиляции на моей стороне? Есть ли еще какие-то возможности вычленить ошибку?

Arin Alex

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 1005
    • View Profile
Re: QPrinter crash
« Reply #3 on: October 06, 2020, 12:56:54 am »
Тяжело сказать :) Я смотрю тут сами кутишники в смятении :)
Такие штуки случаются, когда среда сборки замусорена, попробуете PATH почистить.
« Last Edit: October 06, 2020, 11:42:10 am by Arin Alex »