Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Help Insight XE5 kaputt nach Installation von Sydney? (https://www.delphipraxis.net/207452-help-insight-xe5-kaputt-nach-installation-von-sydney.html)

TiGü 25. Mär 2021 11:21

Help Insight XE5 kaputt nach Installation von Sydney?
 
Hallo zusammen,

ich habe gestern Nachmittag parallel zu XE5 das neue Delphi Sydney 10.4.2 installiert.
Kann die Ursache sein, muss aber nicht. Letztes Windows-Update war am 18.03.2021.

Heute stelle ich in XE5 anhand unseres Hauptprojektes fest, dass der Parser für den Hint kaputt ist, wenn man mit dem Mauscursor über den eigenen Quelltext fährt.
Die IDE raucht dann ab und die Windows 10 Problem Berichterstattung will aktiv werden.

Zum Eingrenzen des Problems habe ich eine zweite XE5 Instanz gestartet und an die erste Instanz mit dem Hauptprojekt attached.
Es kracht dann beim MouseOver über einen VCL-Unitnamen, der Hint "Parsing..." erscheint und dann kommt auch schon eine Floating Point Exception tief unten im .NET 2.0 Framework.

Code:
First chance exception at $5562458E. Exception class $C0000090 with message 'floating point invalid operation at 0x5562458e'. Process bds.exe (5276)
Der letzte Eintrag auf Seiten der IDE zeigt
Delphi-Quellcode:
coreide190.Helpsight.ShowHelpsightTip$5600$ActRec.$0$Body:210:
Das habe ich im Call Stack per Kommentar // gekennzeichnet.
Weiter unten ist das entsprechende Disassembly dazu (2063BC0F E8AC59E1FF call @CheckAutoResult).

Ich teste gleich gegen ein leeres Konsolenprojekt, ob das da auch auftritt.

Hat sonst schon jemand eine Idee, das gleiche erlebt oder einen Lösungsvorschlag?

Call Stack:
Code:
:5562458e ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:5561e66e ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:5561e64d ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:5561d3d6 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:5561c93e ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:5561cbe6 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555ee2dd ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555ed66c ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555e6409 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555e5584 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555e572b ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:555e5e3f ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
:0731b838 mscorwks.CoUninitializeEE + 0x42EC
:0731b8cd mscorwks.CoUninitializeEE + 0x4381
:0731b940 mscorwks.CoUninitializeEE + 0x43F4
:0731b6b9 mscorwks.CoUninitializeEE + 0x416D
:0731b47b mscorwks.CoUninitializeEE + 0x3F2F
:07300536 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:073006f7 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:072d0686 
:2c1fc8e8 
:2c0c37f0 
:2c0c331a
:2c0c3259 
:2c0c568d
:2c0c2708 
:2c0c23f2 
:2c0c2324 
:2c0c13c7 
:2c0cd3d2 
:2c0ccde8 
:2c0cc8ec
:2c0cc7cd
:2c1fc6fc
:060ff962 
:060ff588 
:2c1f41d1 
:2c1f401e
:060f7a8e
:060f7827 
:060f6225 
:05f222f3 
:060f73d7 
:16e2e344 
:16e2e038 
:060f6ab7 
:060f68ce
:060f67c4 
:060f676f
:060f66b9 
:060f64d5 
:060f6331 
:060f61ef
:05f222f3 
:060f73d7 
:16e2e344 
:16e2e038 
:060f6ab7 
:060f68ce
:060f67c4 
:060f676f
:060f66b9 
:060f64d5 
:060f6331 
:060f61ef
:05f222f3 
:05f217e1 
:05f2157d
:05f204b5 
:16e2e331 
:16e2e038 
:16e2df55 
:16e2db8f
:16e2d5e2 
:073f5d51 mscorwks.IEE + 0xF441
:073f5e5b mscorwks.IEE + 0xF54B
:073f5fc4 mscorwks.IEE + 0xF6B4
:0723a271 
:2063bc0f coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:210 + 0x16 // ASM-Ansicht Stelle 1
:204d9fad coreide190.ParserThread.TParserTask.Execute:201 + 0x15
:204da92c coreide190.ParserThread.TParseThread.ExecuteTasks:515 + 0x8
:204da32e coreide190.ParserThread.TParseThread.Execute:323
:50170c60 rtl190.System.Classes.ThreadProc:14561
:50060c36 rtl190.System.ThreadWrapper:23409
:7643fa29 kernel32.BaseThreadInitThunk + 0x19
:76f67c7e ntdll.RtlGetAppContainerNamedObjectPath + 0x11E
:76f67c4e ntdll.RtlGetAppContainerNamedObjectPath + 0xee
ASM-Ansicht Stelle 1:
Code:
coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:207:
2063BBC0 6A00             push $00
2063BBC2 6A00             push $00
2063BBC4 49               dec ecx
2063BBC5 75F9             jnz -7      ; $2063bbc0
2063BBC7 53               push ebx
2063BBC8 8955FC          mov [ebp-$04],edx
2063BBCB 8BD8             mov ebx,eax
2063BBCD 8B45FC          mov eax,[ebp-$04]
2063BBD0 E8B359E1FF      call @IntfAddRef ; $20451588
2063BBD5 8D45EC          lea eax,[ebp-$14]
2063BBD8 8B15C4B96320     mov edx,[$2063b9c4]
2063BBDE E8AD58E1FF      call @InitializeRecord ; $20451490
2063BBE3 33C0             xor eax,eax
2063BBE5 55               push ebp
2063BBE6 6886BC6320       push $2063bc86
2063BBEB 64FF30           push dword ptr fs:[eax]
2063BBEE 648920           mov fs:[eax],esp
2063BBF1 8D45E8           lea eax,[ebp-$18]
2063BBF4 E88756E1FF      call @WStrClr ; $20451280
coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:210:
2063BBF9 50               push eax
2063BBFA 8D430C          lea eax,[ebx+$0c]
2063BBFD 50               push eax
2063BBFE 8D4310           lea eax,[ebx+$10]
2063BC01 50               push eax
2063BC02 8D4314           lea eax,[ebx+$14]
2063BC05 50               push eax
2063BC06 8B4318           mov eax,[ebx+$18]
2063BC09 50               push eax
2063BC0A 8B00             mov eax,[eax]
2063BC0C FF501C          call dword ptr [eax+$1c]
2063BC0F E8AC59E1FF      call @CheckAutoResult ; $204515c0 // hier steht der Cursor bei "View Source"
2063BC14 8B55E8           mov edx,[ebp-$18]
2063BC17 8D45EC          lea eax,[ebp-$14]
2063BC1A E8F957E1FF      call @UStrFromWStr ; $20451418
2063BC1F 8B4314           mov eax,[ebx+$14]
2063BC22 8945F0           mov [ebp-$10],eax
2063BC25 8B4310           mov eax,[ebx+$10]
2063BC28 8945F4           mov [ebp-$0c],eax
2063BC2B 8B430C          mov eax,[ebx+$0c]
2063BC2E 8945F8           mov [ebp-$08],eax
2063BC31 8D55D0           lea edx,[ebp-$30]
2063BC34 8D45EC          lea eax,[ebp-$14]
2063BC37 E8E8190000       call Finalization:938 + 0x1B ; $2063d624
2063BC3C 8D4DD0           lea ecx,[ebp-$30]
2063BC3F BAA0BC6320       mov edx,$2063bca0
2063BC44 8B45FC          mov eax,[ebp-$04]
2063BC47 8B18             mov ebx,[eax]
2063BC49 FF5318           call dword ptr [ebx+$18]
2063BC4C 33C0             xor eax,eax
2063BC4E 5A              pop edx
2063BC4F 59               pop ecx
2063BC50 59               pop ecx
2063BC51 648910           mov fs:[eax],edx
coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:215:
2063BC54 688DBC6320       push $2063bc8d
2063BC59 8D45D0           lea eax,[ebp-$30]
2063BC5C 8B15B4749C20     mov edx,[$209c74b4]
2063BC62 E83158E1FF      call @FinalizeRecord ; $20451498
2063BC67 8D45E8           lea eax,[ebp-$18]
2063BC6A E81156E1FF      call @WStrClr ; $20451280
2063BC6F 8D45EC          lea eax,[ebp-$14]
2063BC72 8B15C4B96320     mov edx,[$2063b9c4]
2063BC78 E81B58E1FF      call @FinalizeRecord ; $20451498
2063BC7D 8D45FC          lea eax,[ebp-$04]
2063BC80 E8EB58E1FF      call @IntfClear ; $20451570
2063BC85 C3               ret
2063BC86 E95D55E1FF      jmp @HandleFinally ; $204511e8
2063BC8B EBCC            jmp -52     ; $2063bc59
2063BC8D 5B              pop ebx
2063BC8E 8BE5             mov esp,ebp
2063BC90 5D              pop ebp
2063BC91 C3               ret

TiGü 25. Mär 2021 11:23

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Wenn man die erste Exception in der debuggenden IDE wegklickt, kommen dann immer weitere floating point invalid operation Fehler mit diesem Callstack:

Code:
:07440473 mscorwks.CopyPDBs + 0x4217
:075798b3 mscorwks.LogHelp_LogAssert + 0x3D6
:0731b8cd mscorwks.CoUninitializeEE + 0x4381
:0731b940 mscorwks.CoUninitializeEE + 0x43F4
:0731b6b9 mscorwks.CoUninitializeEE + 0x416D
:0731b47b mscorwks.CoUninitializeEE + 0x3F2F
:07300536 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:073006f7 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:072d0686 
:2c1fc8e8 
:2c0c37f0 
:2c0c331a
:2c0c3259 
:2c0c568d
:2c0c2708 
:2c0c23f2 
:2c0c2324 
:2c0c13c7 
:2c0cd3d2 
:2c0ccde8 
:2c0cc8ec
:2c0cc7cd
:2c1fc6fc
:060ff962 
:060ff588 
:2c1f41d1 
:2c1f401e
:060f7a8e
:060f7827 
:060f6225 
:05f222f3 
:060f73d7 
:16e2e344 
:16e2e038 
:060f6ab7 
:060f68ce
:060f67c4 
:060f676f
:060f66b9 
:060f64d5 
:060f6331 
:060f61ef
:05f222f3 
:060f73d7 
:16e2e344 
:16e2e038 
:060f6ab7 
:060f68ce
:060f67c4 
:060f676f
:060f66b9 
:060f64d5 
:060f6331 
:060f61ef
:05f222f3 
:05f217e1 
:05f2157d
:05f204b5 
:16e2e331 
:16e2e038 
:16e2df55 
:16e2db8f
:16e2d5e2 
:073f5d51 mscorwks.IEE + 0xF441
:073f5e5b mscorwks.IEE + 0xF54B
:073f5fc4 mscorwks.IEE + 0xF6B4
:0723a271 
:2063bc0f coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:210 + 0x16
:204d9fad coreide190.ParserThread.TParserTask.Execute:201 + 0x15
:204da92c coreide190.ParserThread.TParseThread.ExecuteTasks:515 + 0x8
:204da32e coreide190.ParserThread.TParseThread.Execute:323
:50170c60 rtl190.System.Classes.ThreadProc:14561
:50060c36 rtl190.System.ThreadWrapper:23409
:7643fa29 kernel32.BaseThreadInitThunk + 0x19
:76f67c7e ntdll.RtlGetAppContainerNamedObjectPath + 0x11E
:76f67c4e ntdll.RtlGetAppContainerNamedObjectPath + 0xee
Code:
First chance exception at $5562458E. Exception class $C0000090 with message 'floating point invalid operation at 0x5562458e'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)
First chance exception at $07440473. Exception class $C0000090 with message 'floating point invalid operation at 0x07440473'. Process bds.exe (5276)

TiGü 25. Mär 2021 11:27

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Wenn man den Floating Point Fehler auf Ignorieren setzt, dann kommt irgendwann ein Stack Overflow:
Code:
First chance exception at $76F72D26. Exception class $C00000FD with message 'stack overflow at 0xa85f0a8a'. Process bds.exe (5276)
Dann mit Message Box:
Code:
---------------------------
Debugger Fault Notification
---------------------------
Project C:\Program Files (x86)\RAD Studio\12.0\bin\bds.exe faulted with message: 'stack overflow at 0xa85f0a8a'. Process Stopped. Use Step or Run to continue.
---------------------------
OK  
---------------------------
Das geht dann immer so weiter.

Code:
:76f72d26 ntdll.ZwQueryInformationProcess + 0x26
:76f750a6 ntdll.KiUserExceptionDispatcher + 0x26
:075798b3 mscorwks.LogHelp_LogAssert + 0x3D6
:0731b8cd mscorwks.CoUninitializeEE + 0x4381
:0731b940 mscorwks.CoUninitializeEE + 0x43F4
:0731b6b9 mscorwks.CoUninitializeEE + 0x416D
:0731b47b mscorwks.CoUninitializeEE + 0x3F2F
:07300536 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:073006f7 ; C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
:072d0686 
// ...gekürzt...
:16e2d5e2 
:073f5d51 mscorwks.IEE + 0xF441
:073f5e5b mscorwks.IEE + 0xF54B
:073f5fc4 mscorwks.IEE + 0xF6B4
:0723a271 
:2063bc0f coreide190.HelpInsight.ShowHelpInsightTip$5600$ActRec.$0$Body:210 + 0x16
:204d9fad coreide190.ParserThread.TParserTask.Execute:201 + 0x15
:204da92c coreide190.ParserThread.TParseThread.ExecuteTasks:515 + 0x8
:204da32e coreide190.ParserThread.TParseThread.Execute:323
:50170c60 rtl190.System.Classes.ThreadProc:14561
:50060c36 rtl190.System.ThreadWrapper:23409
:7643fa29 kernel32.BaseThreadInitThunk + 0x19
:76f67c7e ntdll.RtlGetAppContainerNamedObjectPath + 0x11E
:76f67c4e ntdll.RtlGetAppContainerNamedObjectPath + 0xee

TiGü 25. Mär 2021 11:45

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Hm, nach dem Laden eines anderen Projektes geht es augenscheinlich wieder.
Ich werde mal beobachten.

Bernhard Geyer 25. Mär 2021 18:20

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Evtl. Problem mit längen Suchpfade?
Ansonsten macht eine IDE-Installation keine andere Kaputt.

Da die neuen Delphi auch nicht J# benötigen, ist hier auch ein potentielle Problemquelle weniger vorhanden,
welche über diesen Umweg alte .NET-Versionen beschädigen könnte.

TiGü 26. Mär 2021 10:00

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Zitat:

Ansonsten macht eine IDE-Installation keine andere Kaputt.
Eben, das ist ja auch meine Erfahrung.
Kann auch sein, dass dies eher Drittkomponenten geschuldet ist?
Raize/Konopka, Virtual TreeView, JCL/JVCL haben hier ihre Finger mit im Spiel.

Jedenfalls neuer Tag, gleicher Fehler nach dem Neustart des PCs.
Wenn ich XE5 neu starte und unser Hauptprojekt öffne und Help Insight durch MouseOver aktiviere, stürzt mir die IDE ab wie oben beschrieben.
Wenn ich zuvor ein neues Konsolenprogramm öffne und dort Help Insight auslöse funktioniert es.
Dann dieses Miniprojekt schließen und das eigentliche Hauptprogramm öffnen.
Hier wieder Help Insight auslösen und es geht.

Eine parallel gestartete XE5 Instanz mit nur dem Hauptprojekt geladen zeigt wieder das Verhalten.

Ich habe jetzt die Verknüpfung mit -rNew versehen, um in der Registry einen neuen Zweig zu erzeugen:
Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\Ne w\12.0

Die damit geöffnete Instanz zeigt nach manuellen Öffnen des Hauptprojektes nicht das kaputte Verhalten, kennt aber natürlich nicht die ganzen Pfade und Komponenten.
Ich werde jetzt Schritt für Schritt die Einträge für

Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BD S\12.0\Known IDE Packages
Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BD S\12.0\Known Packages
Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BD S\12.0\Library\Win32

exportieren und im neuen Zweig New importieren und dann testen.

TiGü 26. Mär 2021 14:53

AW: Help Insight XE5 kaputt nach Installation von Sydney?
 
Bin noch nicht wirklich schlauer, aber zumindest FixInsight, MMX Code Explorer in Version 13, CnPack oder GExperts sind nicht die Schuldigen, da ich das alles testweise deinstalliert habe.


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