Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   bds.exe bleibt im Taskmanager hängen (https://www.delphipraxis.net/192773-bds-exe-bleibt-im-taskmanager-haengen.html)

zobien123 18. Mai 2017 11:56

bds.exe bleibt im Taskmanager hängen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Zusammen :)

folgendes Problem: Immer wieder bleibt nach dem beenden von Delphi XE2 die bds.exe im Taskmanager hängen. Der Prozess lässt sich nicht killen (Zugriff verweigert). Nur ein Neustart behebt den Fehler.

Hat jemand das gleiche Problem bzw eine Lösung, wie man den Task/Prozess killen kann?

Sherlock 18. Mai 2017 12:09

AW: bds.exe bleibt im Taskmanager hängen
 
Können diese Überreste nichtmal als Admin gekillt werden?

Das ist ziemlich ungewöhnlich. Auch die Anzahl der Prozesse ist verdammt hoch. Startest Du den Rechner täglich neu oder "klappst Du nur den Deckel zu"?

Sherlock

zobien123 18. Mai 2017 12:15

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Können diese Überreste nichtmal als Admin gekillt werden?
Habe ich auch schon versucht, selbes Ergebnis.

Zitat:

Das ist ziemlich ungewöhnlich. Auch die Anzahl der Prozesse ist verdammt hoch. Startest Du den Rechner täglich neu oder "klappst Du nur den Deckel zu"?
Ich fahre den PC jeden Tag herunter.

Ich habe es auch mal über cmd mit Adminrechten versucht, da bekomme ich folgende Meldung:

Code:
FEHLER: Der Prozess "bds.exe" mit PID 8656 konnte nicht beendet werden.
Ursache: Von dieser Aufgabe wird momentan keine Instanz ausgeführt.

t.roller 18. Mai 2017 16:11

AW: bds.exe bleibt im Taskmanager hängen
 
Wahrscheinlich hängt der DEBUGGER.
Starte zum Compilieren mit UMSCH+STRG+F9.

Zum Beenden von BDS.exe:
Schon mal STRG+F2, danach ALT+F4 versucht?

Zacherl 18. Mai 2017 16:18

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Zitat von t.roller (Beitrag 1371954)
Wahrscheinlich hängt der DEBUGGER.
Starte zum Compilieren mit UMSCH+STRG+F9.

Es kommt ja erst vor, wenn er Delphi schon geschlossen hat. Tippe aber auch darauf, dass irgendetwas mit dem Debugger nicht stimmt. Dieses Verhalten, dass ein Prozess sich im Kernel irgendwie festgefressen hat, konnte ich auch schon einige Male beobachten - immer nur dann, wenn ich einen Debugger attached hatte.

Neumann 18. Mai 2017 17:50

AW: bds.exe bleibt im Taskmanager hängen
 
Ist noch harmlos - bei mir killt der Debugger ab und zu Windows 10 komplett -es geht dann nur noch Rechner mit Knopf komplett ausschalten.

Passiert übrigens seltener, wenn ich bds.exe nur einen Prozesorkern zuweise.

Delphi-Laie 18. Mai 2017 23:36

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Zitat von zobien123 (Beitrag 1371884)
Der Prozess lässt sich nicht killen (Zugriff verweigert). Nur ein Neustart behebt den Fehler.

Hat jemand das gleiche Problem bzw eine Lösung, wie man den Task/Prozess killen kann?

Nimm den Process Explorer (und/oder den Process Monitor) der Sysinternals oder mein Programm "Prozesse" (und gib ihm nach dem Start Maximalrechte) - damit sollte es möglich sein. Der Taskmanager hat hinsichtlich des Prozeßbeendens nämlich leider kein Maximalniveau.

SneakyBagels 19. Mai 2017 00:15

AW: bds.exe bleibt im Taskmanager hängen
 
Im Process Explorer einfach Find => Find Handle und dort bds.exe suchen und jedes einzelne Handle schließen (in der Liste unten im Hauptfenster).

t.roller 19. Mai 2017 06:30

AW: bds.exe bleibt im Taskmanager hängen
 
Getestet mit WIN8.1, XE7:
Delphi-Quellcode:
// uses tlhelp32;
function KillTask(ExeFileName: string): integer;
const
  PROCESS_TERMINATE=$0001;
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
begin
  result := 0;
  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
  while integer(ContinueLoop) <> 0 do begin
    if (StrIComp(PChar(ExtractFileName(FProcessEntry32.szExeFile)), PChar(ExeFileName)) = 0)
       or (StrIComp(FProcessEntry32.szExeFile, PChar(ExeFileName)) = 0) then
      Result := Integer(TerminateProcess(OpenProcess(
                        PROCESS_TERMINATE, BOOL(0), // BOOL(0) means 'false'
                        FProcessEntry32.th32ProcessID), 0));
    ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
KillTask('BDS.exe');
end;

Bernhard Geyer 19. Mai 2017 07:10

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Zitat von Neumann (Beitrag 1371971)
Ist noch harmlos - bei mir killt der Debugger ab und zu Windows 10 komplett -es geht dann nur noch Rechner mit Knopf komplett ausschalten.

Das deutet darauf hin das deine Rechner ein HW-Problem hat. Der Delphi-Debugger ist nich so tief im system verankert das er ein Windows Killen könnte

Zitat:

Zitat von Neumann (Beitrag 1371971)
Passiert übrigens seltener, wenn ich bds.exe nur einen Prozesorkern zuweise.

Das deutet auch wieder auf ein HW-Problem hin. Wir hatten vor Jahren ein System - damals noch ein Multi-Sockel-System - welches auch Problem mit unserer SW verursacht hatte.
Diese Problem hatten sich gelöst als einer der CPU entgültig den Geist aufgegeben hatte und wir eine neue HW bekommen hatten.

zobien123 19. Mai 2017 11:09

AW: bds.exe bleibt im Taskmanager hängen
 
@t.roller danke für den Code, funktioniert aber leider nicht mit der bds.exe, ist wohl viel zu hartnäckig :evil:

Der Tipp mit dem Process Explorer hatte ich bereits auch schon versucht -> gleiches Ergebnis

Delphi-Laie 19. Mai 2017 13:00

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Zitat von zobien123 (Beitrag 1372056)
@t.roller danke für den Code, funktioniert aber leider nicht mit der bds.exe, ist wohl viel zu hartnäckig :evil:

Deshalb soll(te)st Du ja auch den Process Explorer oder mein Programm (als Administrator starten und ihm maximale Rechte erlauben) verwenden.

Zitat:

Zitat von zobien123 (Beitrag 1372056)
Der Tipp mit dem Process Explorer hatte ich bereits auch schon versucht -> gleiches Ergebnis

Hm... Also mit den Maximalrechten bekommt man sogar die meisten Sytemprozesse beendet, auch auf den ach so sicheren Windows der NT-Baureihe. Je nachdem, welcher Prozeß es ist und wie wichtig er ist und wie Windows das bemerkt, gibt es einen Bluescreen, Windows fährt mit Minutenfrist geordnet herunter oder - da bin ich mir jetzt nicht sicher - friert ein.

Zacherl 19. Mai 2017 15:50

AW: bds.exe bleibt im Taskmanager hängen
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1372009)
Zitat:

Zitat von Neumann (Beitrag 1371971)
Ist noch harmlos - bei mir killt der Debugger ab und zu Windows 10 komplett -es geht dann nur noch Rechner mit Knopf komplett ausschalten.

Das deutet darauf hin das deine Rechner ein HW-Problem hat. Der Delphi-Debugger ist nich so tief im system verankert das er ein Windows Killen könnte

Das stimmt so nicht ganz. Wie jeder Windows Debugger verwendet auch Delphi die Windows Debugger API, welche durchaus bis ganz tief unten in den Kernel reicht.

Zitat:

Zitat von Delphi-Laie (Beitrag 1372074)
Hm... Also mit den Maximalrechten bekommt man sogar die meisten Sytemprozesse beendet, auch auf den ach so sicheren Windows der NT-Baureihe. Je nachdem, welcher Prozeß es ist und wie wichtig er ist und wie Windows das bemerkt, gibt es einen Bluescreen, Windows fährt mit Minutenfrist geordnet herunter oder - da bin ich mir jetzt nicht sicher - friert ein.

Bringt bei diesen festgefressenen Prozessen leider wirklich nichts. Konnte ein ähnliches Problem im Zusammenhang mit Debuggern wie gesagt auch schon ab und zu mal beobachten und hier half immer nur ein kompletter Neustart. Zumindest aus dem Usermode heraus ist hier nichts zu machen.


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