![]() |
Windows XP friert ein
Hallo Leute,
hat jemand von Euch schon mal was von einem Windows XP-Problem gehört? Meine Applikation (Delphi 4 Standard) läuft auf Windows 98, NT und Windows 2000 einwandfrei. Bei voller CPU-Auslastung (also nur, wenn der Rechner wirklich arbeiten muss) friert die Applikation auf Windows XP Professional aber ein, sobald man die Maus bewegt. Gibt es dafür vielleicht irgendwo einen Delphi- (oder Windows-)Patch? Gruß Arne :wiejetzt: |
Re: Windows XP friert ein
Hast du die Priorität deines Prozesses oder eines einzelnen Threads geändert?
|
Re: Windows XP friert ein
Hai Arne,
willkommen in der "Delphi-PRAXIS". Was friert denn jetzt ein? Delphi oder Windows-XP? Ist mir nicht so ganz klar geworden bei der Frage. |
Re: Windows XP friert ein
Um was für eine Applikation handelt es sich denn?
|
Re: Windows XP friert ein
Hi,
also du kannst mal probiern, während die Anwendung bzw. Windows hängt, STRG-ESCAPE zu drücken. Das sollte die StartLeiste öffnen, dein Programm in den Hintergrund rücken. Wenn das dann immer noch nicht geht, solltest du schaun, ob irgenwo Schleifen oder so nicht beendet werden ... :wall: devnull |
Re: Windows XP friert ein
Erst einmal vielen Dank für die zahlreichen Antworten. Ich werde mal chronologisch darauf antworten:
Zu Lucky: Ich habe keinerlei Prioritäten geändert. Das ist eine mit Delphi erstellte EXE, die auf allen Windows-Systemen wunderbar läuft, nur eben auf XP nicht. Zu Sharky: Weder noch. Meine mit Delphi erstellte Applikation friert ein und lässt sich nur noch mit STRG+ALT+DEL beenden. Reagiert auf gar nichts mehr. Zu The_Master: Es ist eine 0-8-15 Applikation. Noch nicht einmal Multi-Threading. Eine einfache EXE, die aber ganz hübsch etwas zu rechnen hat und die CPU zu 100% auslastet. Zu devnull: STRG+ESC habe ich noch nicht ausprobiert. Ehrlich gesagt weiß ich aber nicht, was das bringen soll. Ich möchte ja gerne, dass das auch auf XP läuft. Dass da noch so grobe Fehler drin sind wie nicht bendete Schleifen, glaube ich nicht. Dieselbe EXE läuft ja auf allen anderen Windows-Systemen wunderbar... |
Re: Windows XP friert ein
Hallo Arne,
ich denke, bei Deinem Problem ist eine Ferndiagnose sehr schwierig, eher schon unmöglich. Wenn Deine Applikation nicht sehr groß ist, bzw. Dein Code nicht "geheim" ist, könntest Du ihn ja mal anhängen, vielleicht findet sich jemand der ihn durchsehen kann. Ansonsten fällt mir nur noch ein Dich zu fragen, ob du Fremdkomponenten oder selbstgeschriebene Komponenten einsetzt, oder ob Du in den Tiefen der API-Programmierung wandelst. Eine andere Möglichkeit wäre, Deine Applikation in der Delphi IDE unter WinXP laufen zu lassen und im Debugger zu betrachten. Oder Du Verringerst sukzessive die Funktion Deines Programms, oder besser, Du kommentierst alle Berechnungen aus, und nimmst sie Schritt für Schritt wieder hinzu. Dazwischen machst Du den Test mit der Maus, bis wieder alles einfriert, möglicherweise findest Du so das "fehlerhafte" Modul. |
Re: Windows XP friert ein
Zitat:
|
Re: Windows XP friert ein
Wenn die Berechnung in einer Schleife erfolgt, ruf ab und an mal Application.Processmessages auf.
|
Re: Windows XP friert ein
Hi Leute,
die Applikation ist zu groß und viel zu komplex, um sie jemandem zur Durchsicht zu geben (hat was mit Graphentheorie und Genetik zu tun). Ich hatte halt die Hoffnung, Euch wäre ein solcher Bug bzgl. Delphi/ XP schon mal untergekommen. Nun ja, dann hilft nichts: Dann werd' ich wohl mal ab und an ein sleep und ein ProcessMessages einbauen und weitersehen. Vielleicht hilft das ja schon. Lustigerweise läuft es ja mit kleinen Datensätzen (also nur kurzzeitige 100% Belastung) und wenn die CPU nicht ausgelastet ist, läuft sowieso alles. Trotzdem vielen Dank, Arne :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 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