![]() |
XE6: Dll fehlt: Programm ist plötzlich "aus"
Liste der Anhänge anzeigen (Anzahl: 1)
Folgendes Programm:
Delphi-Quellcode:
Eine (nicht vorhandene) dll wird statisch eingebunden. Was bekommt man beim Starten? Richtig, das Bild im Anhang. So kennt es jeder.
program Project1;
{$APPTYPE CONSOLE} procedure someProc(); stdcall; external 'someDll.dll'; begin someProc(); end. Es ist Delphi XE5, Windows 7 Professional. Nun mein Problem: Auf einem System mit XE6 (und Win8.1) bekomme ich die Meldung nie, wenn ich das Programm aus der IDE starte. Egal ob mit Debugger oder ohne. Das Konsolenfenster geht in diesem Fall kurz auf und dann wieder zu. Auch beim Druck auf F8. Starte ich es z.B. vom Explorer aus verhält es sich wie auf der anderen Maschine auch. Übersehe ich eine Einstellung? Hat sich hier mit XE6 etwas geändert? Auf dem Win8.1-System fehlt mir übrigens die Gruppe "Debuggerbenutzer". Ob das damit etwas zu tun haben könnte? |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Die Ereignisprotokolle (STRG+ALT+V) sehen auch vollkommen verschieden aus:
Code:
Ereignisprotokoll (Win7)
Prozessstart: C:\Users\User\Project1.exe. Basisadresse: $00400000. Prozess Project1.exe (6400)
Code:
Ereignisprotokoll (Win8.1)
Thread-Start: Thread-ID: 2104. Prozess Project1.exe (5472) Prozessstart: C:\Users\User\Project1.exe. Basisadresse: $00400000. Prozess Project1.exe (5472) Modul laden: Project1.exe. Enthält Debug-Infos. Basisadresse: $00400000. Prozess Project1.exe (5472) Modul laden: ntdll.dll. Ohne Debug-Infos. Basisadresse: $772A0000. Prozess Project1.exe (5472) Debug-Ausgabe: Page heap: pid 0x1560: page heap enabled with flags 0x3. Prozess Project1.exe (5472) Debug-Ausgabe: AVRF: Project1.exe: pid 0x1560: flags 0x81643267: application verifier enabled Prozess Project1.exe (5472) Modul laden: VERIFIER.dll. Ohne Debug-Infos. Basisadresse: $679D0000. Prozess Project1.exe (5472) Debug-Ausgabe: Page heap: pid 0x1560: page heap enabled with flags 0x3. Prozess Project1.exe (5472) Debug-Ausgabe: AVRF: Project1.exe: pid 0x1560: flags 0x81643267: application verifier enabled Prozess Project1.exe (5472) Modul laden: vrfcore.dll. Ohne Debug-Infos. Basisadresse: $6A8F0000. Prozess Project1.exe (5472) Modul laden: VFBASICS.dll. Ohne Debug-Infos. Basisadresse: $66C50000. Prozess Project1.exe (5472) Modul laden: accore.dll. Ohne Debug-Infos. Basisadresse: $67880000. Prozess Project1.exe (5472) Modul laden: KERNEL32.dll. Ohne Debug-Infos. Basisadresse: $74E00000. Prozess Project1.exe (5472) Modul laden: USER32.dll. Ohne Debug-Infos. Basisadresse: $750B0000. Prozess Project1.exe (5472) Modul laden: KERNELBASE.dll. Ohne Debug-Infos. Basisadresse: $76520000. Prozess Project1.exe (5472) Modul laden: GDI32.dll. Ohne Debug-Infos. Basisadresse: $769B0000. Prozess Project1.exe (5472) Modul laden: vfsecurity.dll. Ohne Debug-Infos. Basisadresse: $67480000. Prozess Project1.exe (5472) Modul laden: PSAPI.DLL. Ohne Debug-Infos. Basisadresse: $74CE0000. Prozess Project1.exe (5472) Modul laden: ADVAPI32.dll. Ohne Debug-Infos. Basisadresse: $75200000. Prozess Project1.exe (5472) Modul laden: ole32.dll. Ohne Debug-Infos. Basisadresse: $74CF0000. Prozess Project1.exe (5472) Modul laden: VERSION.dll. Ohne Debug-Infos. Basisadresse: $71970000. Prozess Project1.exe (5472) Modul laden: msvcrt.dll. Ohne Debug-Infos. Basisadresse: $768F0000. Prozess Project1.exe (5472) Modul laden: SECHOST.dll. Ohne Debug-Infos. Basisadresse: $75060000. Prozess Project1.exe (5472) Modul laden: RPCRT4.dll. Ohne Debug-Infos. Basisadresse: $76CF0000. Prozess Project1.exe (5472) Modul laden: combase.dll. Ohne Debug-Infos. Basisadresse: $76680000. Prozess Project1.exe (5472) Modul laden: SspiCli.dll. Ohne Debug-Infos. Basisadresse: $74CC0000. Prozess Project1.exe (5472) Modul laden: CRYPTBASE.dll. Ohne Debug-Infos. Basisadresse: $74CB0000. Prozess Project1.exe (5472) Modul laden: bcryptPrimitives.dll. Ohne Debug-Infos. Basisadresse: $74C50000. Prozess Project1.exe (5472) Modul laden: vfPrint.dll. Ohne Debug-Infos. Basisadresse: $66C00000. Prozess Project1.exe (5472) Modul laden: vfNet.dll. Ohne Debug-Infos. Basisadresse: $67860000. Prozess Project1.exe (5472) Modul laden: vfntlmless.dll. Ohne Debug-Infos. Basisadresse: $6ADA0000. Prozess Project1.exe (5472) Modul laden: vfnws.dll. Ohne Debug-Infos. Basisadresse: $66BE0000. Prozess Project1.exe (5472) Modul laden: vfcuzz.dll. Ohne Debug-Infos. Basisadresse: $65C30000. Prozess Project1.exe (5472) Modul laden: IMM32.dll. Ohne Debug-Infos. Basisadresse: $764A0000. Prozess Project1.exe (5472) Modul laden: MSCTF.dll. Ohne Debug-Infos. Basisadresse: $767D0000. Prozess Project1.exe (5472) Debug-Ausgabe: LuaPriv: Attaching to process... Prozess Project1.exe (5472) Debug-Ausgabe: -- LuaPriv initialized-- Prozess Project1.exe (5472) Debug-Ausgabe: failed to set heap information 00000057 Prozess Project1.exe (5472) |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Der Debugger kann bestimmte Exceptions ignorieren.
Siehe Tools > Optionen > Debugger-Optionen > ... oder siehe F6 "Exceptions" Eine Delayed-Loading-DLL ist das aber nicht? ![]() Aber vielleicht behandelt Windows das Laden der DLLs seit 8.1 anders? Liegt das nun am Delphi (XE5 oder XE6) und/oder am Windows (7 oder 8) ... :gruebel: |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Nein, kein
Delphi-Quellcode:
wie man sieht.
delayed
Zitat:
Weiterhin muss ich mich entschuldigen- Mittlerweile läuft wieder alles wie man es eigentlich erwartet. Schien wohl ein Bug in der IDE zu sein. Hoffentlich kommt es nicht wieder... |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Zitat:
|
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
|
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Zitat:
Also kann es auch Windows generell |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Bei euch ist das Projekt aber nicht XE6, oder?
Weil der Kerl im Delphi-Treff hat auch XE6, ich fange mit XE6 grade erst an und sehe es dort zum ersten mal... |
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Genau deshalb fiel mir das sofort auf.
|
AW: XE6: Dll fehlt: Programm ist plötzlich "aus"
Programm und DLL mit Delphi XE6 Up. 1 (Version 20.0.16277.1276) compiliert. Es wird das delayed eingesetzt.
Wenn ich mein Programm in 32 Bit compiliere, dann kommt der Error "Externe Exception C06D007E" beim Aufruf der 32 Bit DLL. Im 64 Bit Modus compiliert funktioniert es. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz