Access Violation w standardzie – pusta aplikacja nie daje się skompilować

0

Std projekt forma VCL z przyciskiem jednym, Run with Debug, po wyjściu zawsze access violation wskazuje na System.pas i tą linię:

InitContext := InitContext.OuterContext^

To samo na XE4 i Tokyo.

0

Coś ściemniasz pokaż cały kod bo prawdopodobnie na destroyu formy próbujesz zwolnić obiekt, który już nie istnieje stąd AV na wyjściu

0

File > New > VCL forms application, std template zero własnego kodu:

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

end.
0

W kodzie powyżej żadnego buttona nie ma. Na pustym projekcie też masz ten sam błąd?

To samo na XE4 i Tokyo.

Na jednym komputerze masz wgrane dwa środowiska? Jeśli tak to może być problem. Kilka razy miałem jazdy jak robiłem upgrade albo chciałem mieć 2 wersje. Nie przytoczę konkretnych przypadków ale czasem coś 'nie działało'. Podczas debugowania sprawdź na jakiej ścieżce podaje ci błąd w Systems.pas, czy na pewno dla zgodnej ze środowiskiem. Proponowałbym odinstalować wszystko i zainstalować na czysto.

0

Tak w pustym projekcie ten sam błąd dlatego wkleiłem std bez buttona. Ścieżka dobra: np. dla Tokyo to jest:

C:\Program Files (x86)\Embarcadero\Studio\19.0\source\rtl\sys\System.pas

Też podejrzewam jakąś kaszanę z dwoma instalacjami.

0

Może w zmiennych środowiskowych PATH porobiła się jakaś kaszana, spróbuj usunąć od jednej wersji (ew. wcześniej sobie zapisać aby przywrócić gdyby nic nie dało) i po restarcie systemu sprawdzić.

0
kAzek napisał(a):

Może w zmiennych środowiskowych PATH porobiła się jakaś kaszana, spróbuj usunąć od jednej wersji (ew. wcześniej sobie zapisać aby przywrócić gdyby nic nie dało) i po restarcie systemu sprawdzić.

NIC nie pomaga, reinstall reset rejestru wyłączenie ścieżek zmiennych środowiskowych BDS11stki (XE4).
Niezły hardcore, chyba reinstall Windowsa pozostaje.

0

Masz zainstalowane jakieś dodatki, rozszerzenia itp.?
Bez debugowania nie pojawia się ten AV?
Próbowałeś debugować procedure _Halt0 na wyjściu i zobaczyć co tam się dzieje? Jak masz czas to możesz się pobawić z wirtualką i sprawdzić co jest nie tak.
https://developer.microsoft.com/pl-pl/windows/downloads/virtual-machines
lub mniejsza wirtualka
https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
Pobierz wirtualke, postaw Delphi, wykonaj ten sam program i debuguj na jednym i drugim systemie. Ja bym tam zrobił jakby mi bardzo zależało na znalezieniu przyczyny.
A jeśli nie to format chyba :/

1 użytkowników online, w tym zalogowanych: 0, gości: 1