Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   MadExcept (DLL corrupt) (https://www.delphipraxis.net/180995-madexcept-dll-corrupt.html)

snook 6. Jul 2014 21:31

MadExcept (DLL corrupt)
 
Hallo alle miteinander,

für unser Institut habe ich eine Laborsoftware mit PlugIn-System entwickelt. Die PlugIns werden durch DLL's zur Verfügung gestellt, welche zur Laufzeit dynamisch in die Hauptanwendung eingebunden werden. Die PlugIns (vornehmlich Geräte-Treiber und Messungen) werden dann von Mitarbeitern geschrieben und weiterentwickelt, sodass ich eine Versionskontrolle eingepflegt habe, welche die Verwaltung von Versionsinformationen und wenn nötig Updates übernimmt (zentraler Server, auf dem aktualisierte DLL's hochgeladen werden und dann mit allen Clients synchronisiert werden). Darüberhinaus wird in die DLL's standardmäßig MadExcept hineinkompiliert.
Wie sich nun zeigte, habe ich ein Problem beim überprüfen der Versionsinformationen der DLL's auf der Server-Seite. Öffne ich diese mittles
Delphi-Quellcode:
Windows.LoadLibrary()
bekomme ich bei manchen DLL's folgende Fehlermeldung:
The file "%s" seems to be corrupt!
Durch einfügen von
Delphi-Quellcode:
ShowMessage()
an diversen Stellen in der
Delphi-Quellcode:
DLLMain
, sowie
Delphi-Quellcode:
Initialization/finalization
-Abschnitten von solchen Units, die früh geladen werden, konnte ich nicht herausfinden an welcher Stelle der Fehler produziert wird.
DUrch Zufall habe ich nun herausgefunden, dass der Fehler verschwindet, wenn ich MadExcept für die betreffenden DLL's entferne.
Der Fehler tritt Plattform-Unabhängig auf Windows XP, Windows Vista und Windows 7 Systemen auf.
Hat jemand eventuell eine Ahnung was diesen Fehler verursacht?

Viele Grüße Snook

API 7. Jul 2014 07:11

AW: MadExcept (DLL corrupt)
 
Hallo,
Warum nicht gleich beim Hersteller die Frage platzieren?
http://forum.madshi.net/viewforum.php?f=4

snook 7. Jul 2014 12:31

AW: MadExcept (DLL corrupt)
 
Schon geschehen, danke für den Tip. Falls dennoch irgendjemand hier solch einer Fehlermeldung mal über den Weg gelaufen ist, würde ich mich über sachdienliche Hinweise sehr freuen 8-)

snook 7. Jul 2014 13:03

AW: MadExcept (DLL corrupt)
 
Problem gelöst!
MadExcept generiert standardmäßig eine Checksumme für die DLL (während des compilierens). Beim hochladen der DLL auf den Server wurde die Datei scheinbar leicht modifiziert (evtl. Avast), sodass diese Checksumme nicht mehr übereinstimmte. Das automatisierte Erzeugen dieser Checksumme kann im Hauptfenster von MadExcept (Tab "BasicSettings") deaktiviert werden.

Viele Grüße, Snook

himitsu 7. Jul 2014 13:25

AW: MadExcept (DLL corrupt)
 
Zitat:

Zitat von snook (Beitrag 1264676)
Beim hochladen der DLL auf den Server wurde die Datei scheinbar leicht modifiziert (evtl. Avast),

Oder bei FTP der falsche Übertragungmodus.

z.B. Binaries und Text-Modus vertragen sich nicht.

snook 7. Jul 2014 13:35

AW: MadExcept (DLL corrupt)
 
:oops: Danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:18 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