Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein (https://www.delphipraxis.net/140075-windows7-64bit-und-d2010-ide-friert-beim-ausfuehren-f9-ein.html)

Win32.API 11. Sep 2009 10:52


Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein
 
Hallo,

ich bin gerade dabei ein groeßeres Projekt von Delphi 2007 auf Delphi 2010 (Demo) zu portieren. Wenn ich versuche das Projekt mit dem Debugger auszufuerhen (F9) friert die IDE fast immer ein. Im Kompatibilitaetsmodus mit Vista SP2 und Administratorrechten scheint das Probleme seltener aufzutreten, koennte aber auch nur Zufall sein.

Grueße, Win32

holliesoft 11. Sep 2009 11:05

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Hi,

Zitat:

Zitat von Win32.API
ich bin gerade dabei ein groeßeres Projekt von Delphi 2007 auf Delphi 2010 (Demo) zu portieren. Wenn ich versuche das Projekt mit dem Debugger auszufuerhen (F9) friert die IDE fast immer ein. Im Kompatibilitaetsmodus mit Vista SP2 und Administratorrechten scheint das Probleme seltener aufzutreten, koennte aber auch nur Zufall sein.

Grueße, Win32

Ich hatte unter Windows 7 64bit auch erst Probleme mit dem Debugger, die ich durch einen hier in der DP gefundenen Patch einer Datei beheben konnte.
Das Hier im Forum suchenIDE Fix Pack von jbg hat laut Changelog ab Version 2.7 auch einen Fix für dieses Problem an Board.

Gruß
Patrick

s.h.a.r.k 11. Sep 2009 11:08

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
schon mal probiert das programm mit f7 starten zu lassen und zu sehen was da passiert? dass es vielleicht am programm selbst liegt? (will ich nicht hoffen ;) )

was für antiviren-system hast du drauf? evtl. wird delphi ja als intruder "erkannt", geblockt und bleibt dadurch stehen?

das wären meine ersten gedanken zum problem...

jbg 11. Sep 2009 11:27

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Zitat:

Zitat von holliesoft
Das Hier im Forum suchenIDE Fix Pack von jbg hat laut Changelog ab Version 2.7 auch einen Fix für dieses Problem an Board.

Aber nur für Delphi 2007 und 2009. Bei Delphi 2010 hat Embarcadero den zu patchende Stelle selbst entfernt.

bernau 11. Sep 2009 11:29

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Suche eine Downloadmöglichkeit für Windows 7. Habe bei Microsoft.com gesucht, aber nichts gefunden. Es gibt da nur noch die Keys zum freischalten.

Weis jemand, woher ich eine Beta- oder Testversion von Windows 7 bekomme?

jfheins 11. Sep 2009 11:31

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Zitat:

Zitat von bernau
Suche eine Downloadmöglichkeit für Windows 7. Habe bei Microsoft.com gesucht, aber nichts gefunden. Es gibt da nur noch die Keys zum freischalten.

Weis jemand, woher ich eine Beta- oder Testversion von Windows 7 bekomme?

Offiziell: Gar nicht mehr. Der Download des RC wurde ende August entfernt ;)

bernau 11. Sep 2009 11:37

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Zitat:

Zitat von jfheins
Offiziell: Gar nicht mehr. Der Download des RC wurde ende August entfernt ;)


Schadeeeeeee.

Na ja. Warte ich bis es im Laden steht.

fred.ahrens 11. Sep 2009 11:48

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Zitat:

Zitat von bernau
Suche eine Downloadmöglichkeit für Windows 7. Habe bei Microsoft.com gesucht, aber nichts gefunden. Es gibt da nur noch die Keys zum freischalten.

Weis jemand, woher ich eine Beta- oder Testversion von Windows 7 bekomme?

eventuell kannst Du eine Trial hier bekommen

MagicAndre1981 11. Sep 2009 11:55

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
du kannst eine 90Tage Testversion von Windows 7 Enterprise (RTM) herunterladen:

http://technet.microsoft.com/de-de/e...?ITPID=wtcfeed

einfach mit dem integriertem Schlüssel aktivieren und dann hast du 90 Tage Zeit um mit Windows 7 zu spielen.

// d'oh zu langsam :cry:

Win32.API 11. Sep 2009 12:31

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Danke fuer die Antworten, aber der Patch hat keine besserung gebracht und die Firewall/AV blockieren Delphi in keinster Weise, ABER der Tipp mit F7 bringt mich ein Stueck weiter. Die IDE friert nicht direkt ein, sondern in der unit idThread in Zeile 351 (TIdThread.Execute):


Delphi-Quellcode:
try
              if Loop then begin
                while not Stopped do begin
                  try
                    Run; <<<<<<<<<
                  except
                    on E: Exception do begin
                      if not HandleRunException(E) then begin
                        Terminate;
                        raise;
                      end;
                    end;
                  end;
                end;
F8/F9 nach dem BP friert die IDE ein, steppe ich hingegen mit F7 weiter komme ich bis IdCustomTCPServer Zeile 933 (TIdListenerThread.Run):


Delphi-Quellcode:
  try
    // GetYarn can raise exceptions
    LYarn := Server.Scheduler.AcquireYarn;

    LIOHandler := Server.IOHandler.Accept(Binding, Self, LYarn); <<<<<<<<<
    if LIOHandler = nil then begin
      // Listening has finished
      Stop;
      Abort;
    end else begin
      // We have accepted the connection and need to handle it
      LPeer := TIdTCPConnection.Create(nil);
      LPeer.IOHandler := LIOHandler;
      LPeer.ManagedIOHandler := True;
    end;
Steppe ich hier wiederum mit F7 weiter komme ich bis IdServerIOHandlerSocket Zeile 131 (TIdServerIOHandlerSocket.Accept):

Delphi-Quellcode:
  while not AListenerThread.Stopped do begin
    if ASocket.Select(250) then begin <<<<<<<<<<
      if LIOHandler.Binding.Accept(ASocket.Handle) then begin
        LIOHandler.AfterAccept;
        Result := LIOHandler;
        LIOHandler:=nil;
        Break;
      end;
    end;
  end;
Danach gehts hierhin: IdSocketHandle Zeile 535:

Delphi-Quellcode:
function TIdSocketHandle.Select(ATimeOut: Integer = IdTimeoutInfinite): Boolean;
begin
  Result := FReadSocketList.SelectRead(ATimeOut); <<<<<
  TIdAntiFreezeBase.DoProcess(Result = False);
end;

Anschließend hierher: IdStackWindows Zeile 995:

Delphi-Quellcode:
function TIdSocketListWindows.SelectRead(const ATimeout: Integer): Boolean;
var
  LSet: TFDSet;
begin
  // Windows updates this structure on return, so we need to copy it each time we need it
  GetFDSet(LSet);
  FDSelect(@LSet, nil, nil, ATimeout); <<<<<<<
  Result := LSet.fd_count > 0;
end;
Gleiche Unit Zeile 1013 (TIdSocketListWindows.FDSelect):

Delphi-Quellcode:
class function TIdSocketListWindows.FDSelect(AReadSet, AWriteSet,
  AExceptSet: PFDSet; const ATimeout: Integer): Boolean;
var
  LResult: Integer;
  LTime: TTimeVal;
  LTimePtr: PTimeVal;
begin
  if ATimeout = IdTimeoutInfinite then begin
    LTimePtr := nil;
  end else begin
    LTime.tv_sec := ATimeout div 1000;
    LTime.tv_usec := (ATimeout mod 1000) * 1000;
    LTimePtr := @LTime;
  end;
  LResult := IdWinsock2.select(0, AReadSet, AWriteSet, AExceptSet, LTimePtr); <<<<<<<
                         
  Result := GBSDStack.CheckForSocketError(LResult) > 0;
end;
Und letzendlich laden wir hier in IdWinsock2 Zeile 5228 (Stub_select):

Delphi-Quellcode:
function Stub_select(nfds: Integer; readfds, writefds, exceptfds: PFDSet; timeout: PTimeVal): Integer; stdcall;
begin
  @select := FixupStub(hWinSockDll, 'select'); {Do not Localize}
  Result := select(nfds, readfds, writefds, exceptfds, timeout); <<<<<<<
end;
Hier ist mit Sourcecode Schluss, weiter gehts in der CPU-Ansicht:

Freeze bei
Code:
004D759F FF15187B6100     call dword ptr [$00617b18]
[$00617b18] ist WS2_32.select. Hier friert die IDE beim ersten call ein:

Code:
76364988 E803CAFFFF      call $76361390
In diesem call passiert eigentlich nichts, keine calls/jmps oder aenhliches. Es wir nur ein bisschen in Speicher rumgeschrieben.

Steppe ich mit F8 ueber diesen call friert die IDE ein.
Steppe ich mit F7 durch den call durch komme ich zum naechsten lock:

Code:
76364A1D FF5060 call dowrd ptr [eax+$60]
Danach haengt es hier:

Code:
743D6572 E848B1FFFF      call $743d16bf
Hier findet man wieder nur Speicherzugriffe, keinerlei calls oder jmps ... Die Spur verlaeuft sich im Sand.

Grueße,
Win32

jbg 11. Sep 2009 16:47

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Zitat:

Zitat von holliesoft
Das Hier im Forum suchenIDE Fix Pack von jbg hat laut Changelog ab Version 2.7 auch einen Fix für dieses Problem an Board.

Nein hat sie nicht. Es wird "nur" der Debugger-Assertion Fehler behoben. Von einer einfrierenden IDE ist nirgends die Rede im IDE Fix Pack.

Win32.API 11. Sep 2009 17:27

Re: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9)
 
Wenn ich die IDE im Kompatiblitaetsmodus zu Windows XP SP3 ausfuehre ist das Problem behoben. :gruebel:

bonanza 4. Okt 2010 11:19

AW: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein
 
hey,

ich habe das gleiche problem unter windwows 7 64bit mit
Embarcadero® Delphi® 2010 Version 14.0.3593.25826

der IDE fixpack hat leider nichts gebracht und alle kompatibilitätsmodi (auch xp sp3) nicht. es friert auch nicht nur die IDE ein sondern die kompilierten EXEn lassen sich auch außerhalb der IDE nicht benutzen (fenster lassen sich nicht bewegen, knöpfe können nicht gedrückt werden oder so...und ich muss die EXE dann immer mitm Taskmanager killen)
..gibts da mittlerweile ne lösung für?


danke schonmal!

JanDoggen 2. Dez 2011 13:47

AW: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein
 
Hallo 'win32.api'

Hast du je eine Lösung für dieses Problem gefunden?
Wenn ich meine Web Service sehr viel Calls schicke, habe ich gerade das selbe Problem.
Win XP SP3, Delphi 2007, Indy 10 Build 4691

Danke
Jan Doggen
Die Niederlande

Bernhard Geyer 2. Dez 2011 13:50

AW: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein
 
Teamviewer installiert oder Logitech-HW?
Diese haben teilweise Anti-Debug-Schutz eingebaut welche IDE's beim debuggen behindern.

jaenicke 2. Dez 2011 16:08

AW: Windows7 64Bit und D2010: IDE friert beim Ausfuehren(F9) ein
 
Bezüglich des Problems mit TeamViewer 6 habe ich, nachdem ich diesen als Ursache identifiziert hatte, mittlerweile die Rückmeldungen von 12 Rechnern, auf denen das das Problem war, plus die Rückmeldung hier im Forum:
http://www.delphipraxis.net/164704-x...g-haengen.html

Ich bin diesbezüglich auch noch in Kontakt mit dem Support von TeamViewer.


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