AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Darstellungsfehler nach Einbindung externer dll-Dateien
Thema durchsuchen
Ansicht
Themen-Optionen

Darstellungsfehler nach Einbindung externer dll-Dateien

Ein Thema von moos · begonnen am 11. Jan 2016 · letzter Beitrag vom 12. Jan 2016
Antwort Antwort
moos

Registriert seit: 12. Apr 2003
2 Beiträge
 
Delphi 6 Professional
 
#1

Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 11. Jan 2016, 15:40
Hallo Delphi- Forum,
ich habe schon viel Hilfe bei Euch gefunden, vielen Dank dafür.

Nun habe ich ein Problem mit dem ich einfach nicht weiterkomme, weil ich gar nicht weiß, wo ich ansetzen soll.
Wie im Anhang zu sehen ist, fallen mir die Buchstaben in Label und Groupbox zusammen oder werden gar nicht dargestellt (oben; unten korrekte Darstellung). Die Schriftart ist Arial. Es sind auch der Inhalt einer Treeview und die Caption der Hauptform betroffen.

Dies passiert bisher bei Windows 7 Professional Rechnern (64 bit), allerdings nicht bei allen.
Der Code wird auf einem Windows 7 Professional (32 bit) mit Delphi XE2 kompiliert.
Allerdings werden zwei externe dll-Dateien eingebunden, die in C# geschrieben sind und auf einem 64 bit Rechner kompiliert werden. Die dll-Dateien werden mithilfe eines C++ Adapters (eigene dll-Dateien) eingebunden.

Wenn die dll-Dateien nicht eingebunden werden, wird die Oberfläche korrekt dargestellt.
Die externen dll-Dateien benötigen das .NET 4 Framework. Auf den „Problemrechnern“, die sich leider ausschließlich bei Kunden befinden, ist teilweise das .NET 4.5 Framework drauf. Sollte ja eigentlich kein Problem sein.

Hat jemand eine Idee, was ich übersehen habe?

Viele Grüße Carola
Miniaturansicht angehängter Grafiken
darstellungsfehler.jpg  
  Mit Zitat antworten Zitat
Gerd01

Registriert seit: 18. Mär 2005
Ort: NRW
117 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 11. Jan 2016, 19:38
Du kannst nicht einfach eine C# dll in Delphi einbinden, wie du es von Delphi kennst.
Das Speichermanagement ist völlig verschieden. Du kannst allerdings in C# einen COM-Wrapper schreiben.
Ich habe mich die letzten Tage durchgewühlt und habe es jetzt einigermaßen verstanden. Wenn du weiter Interesse an Lösungen hast melde dich.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 11. Jan 2016, 19:50
@Gerd01

Es geht auch mit ohne COM: Unmanaged Exports (DllExport for .Net)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
moos

Registriert seit: 12. Apr 2003
2 Beiträge
 
Delphi 6 Professional
 
#4

AW: Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 12. Jan 2016, 08:34
Vielen Dank für Eure Antworten.

Auf den meisten Rechnern funktioniert unser Programm ohne Probleme. Es gibt nur wenige Ausnahmen von denen ich nicht festmachen kann, was daran anders ist. Alle Testrechner, alle Rechner in der Firma und auch im privaten Umfeld weisen die "Symptome" nicht auf. Daher habe ich die Schuld nicht an der Art des Einbindens der DLL gesucht.

Wenn ich es richtig verstehe, wäre in beiden Fällen die Vorbereitung zur "richtigen" Einbindung vom dll-Dateien Lieferant zu treffen?
Ich selbst kenne mich nur mit Delphi einigermaßen aus.
Die NuGet Gallery hatte ich auch schon als Link weitergegeben, dann werde ich mal versuchen in der Richtung weiter zu kommen.

Vielen Dank für Dein Angebot Gerd01, ich würde darauf gegebenenfalls gerne darauf zurückkommen.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 12. Jan 2016, 08:40
Darstellungsfehler - Da würde ich mal die unterschiede bei den Grafikkarten + Treibern suche.
Die letzten ganz schlechten Erfahrungen hatte ich mit den HD-Treibern von Intel. Also hierbei die ersten Generationen.
Aktuelle HD-Grafiken zeigen keine Probleme mehr.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
bepe

Registriert seit: 17. Okt 2006
119 Beiträge
 
#6

AW: Darstellungsfehler nach Einbindung externer dll-Dateien

  Alt 12. Jan 2016, 09:03
Angesichts der Symptome vielleicht etwas sehr weit her geholt aber ggf. mal die FPU Exceptions kontrollieren. Der Delphi Compiler ist wohl so ziemlich der einzige der von Haus aus die Exceptions einschaltet. Als ich eine .Net DLL einbinden wollte hat das zu massiven Fehlern geführt. Exceptions ausgeschaltet und alles lief.

Stichworte: SetExceptionMask, 8087

mfg,
bp
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz