+1 800 256 3608 (toll-free in North America) or +49 7531 9060-10| service@combit.com

LL23: Problem mit GDI nach Drucken mit List&Label

Hallo,

wir verwenden List&Label v.23.

Nach ein Report geöffnet und geschlossen wird, gibt GetSysColorBrush(COLOR_BTNFACE) ein GDI Object das Problem mit GetObject() macht. Das passiert nur mit COLOR_BTNFACE, es reicht dass die Reportvorlage nachdem Öffnen sofort geschlossen wird.
So:
hJob = LlJobOpen(CMBTLANG_GERMAN);
LlJobClose(hJob);
LOGBRUSH lb;
VERIFY(::GetObject(::GetSysColorBrush(COLOR_BTNFACE), sizeof(LOGBRUSH), (LPVOID)&lb)); // Scheitert!

Hat Jemand dieses Problem auch erfahren?

Mit freundlichen Grüßen,
Plamen

Ich habe eben versucht, das nachzustellen und habe dafür in unserem Sample “Print and Design Labels” den Code wie folgt ergänzt:

BOOL CPrtloopDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	m_hJob = LlJobOpen(-1);
	LlJobClose(m_hJob);
	LOGBRUSH lb;
    VERIFY(::GetObject(::GetSysColorBrush(COLOR_BTNFACE), sizeof(LOGBRUSH), (LPVOID)&lb));
}

Der Call kommt korrekt zurück und lb enthält ein gültiges Objekt. Ich würde Ihnen vorschlagen, das Beispiel einmal selbst zu testen und ggf. unseren Support zu bemühen, wenn sich das Problem nur in Ihrer Anwendung zeigen sollte.

Sie haben Recht, dass der Fehler mit diesem Beispiel nicht auftritt. Auch bei unserer App, kommt das Problem erst nachdem eine andere Bibliothek verwendet wird (CodeJock):

XTPSkinManager()->LoadSkin(...);

Vor diesem Aufruf scheitert GetObject() nicht.

Dann würde ich vorschlagen, dass Sie zunächst einmal bei CodeJock nachfragen, vielleicht ist das Problem dort auch bekannt. Dass eine Skinning-Lösung Einfluss auf das Erzeugen eines Button-Brush nimmt klingt ja auch naheliegend. CodeJock kann sich gerne bei uns melden, wenn wir helfen können. Es wäre toll, wenn Sie die abschließende Lösung hier im Forum posten würden.

Ich habe das Problem bey den CodeJock Support-Foren gemeldet.

Der gepostete Link hat nicht funktioniert und wurde daher vom Moderator entfernt, evtl. ist er nur für registrierte CodeJock-User verfügbar? Ich bin gespannt, was sich aus Ihrer Anfrage ergibt.

Bislang keine Antwort. Falls eine kommt, werde ich mich melden.

Inzwischen habe ich eine Kopie von “Print and Design Labels” mit CodeJock gelinkt - da tritt das Problem auch.

Ich bin aber nicht sicher ob es erlaubt ist Ihnen den Project zu geben, da in dem Include-Verzeichnis auch Quelltext gibt - die Include-Files sind mit .cpp gemischt.

© combit GmbH