Autor |
Beitrag |
Apo95
      
Beiträge: 129
Win2000, WinXP, WinServer 2003 Standard x86, Win7x64
Delphi 6 Enterprise, D2009 Architect, RAD Studio XE6 Architect
|
Verfasst: So 03.02.13 22:40
Tagchen,
ich habe Probleme mit einem Editor, an dem ich schreibe. Das Problem ist, das das Programm zur Laufzeit abbricht und eine Fehlermeldung auswirft:
'Im Projekt LCEDX86.exe ist eine Exception der Klasse EReadError aufgetreten mit der Meldung: Ungültiger Eigenschaftswert...'.
Kann mir jemand sagen, woran das liegt?
Hier ist der Code:
Unit1
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193:
| unit Unit1;
interface
uses ShellApi, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ComCtrls;
type TForm1 = class(TForm) MainMenu1: TMainMenu; Datei1: TMenuItem; Neu1: TMenuItem; extdokument1: TMenuItem; N1: TMenuItem; Sichern1: TMenuItem; Sichernunter1: TMenuItem; N2: TMenuItem; Schlieen1: TMenuItem; bearbeiten1: TMenuItem; WiderrufenEingabe1: TMenuItem; WiderholenEingabe1: TMenuItem; Einfgen1: TMenuItem; Lshcen1: TMenuItem; Kopieren1: TMenuItem; N3: TMenuItem; N4: TMenuItem; N5: TMenuItem; About1: TMenuItem; Fehlerberichtsenden1: TMenuItem; N6: TMenuItem; emailsenden1: TMenuItem; SaveDialog1: TSaveDialog; OpenDialog1: TOpenDialog; FontDialog1: TFontDialog; Einlesen1: TMenuItem; StatusBar1: TStatusBar; DRucken1: TMenuItem; EinrichtenDokument1: TMenuItem; N7: TMenuItem; PrintDialog1: TPrintDialog; PrinterSetupDialog1: TPrinterSetupDialog; RichEdit1: TRichEdit; Programm1: TMenuItem; Einstellungen1: TMenuItem; procedure Sichern1Click(Sender: TObject); procedure Sichernunter1Click(Sender: TObject); procedure Schlieen1Click(Sender: TObject); procedure extdokument1Click(Sender: TObject); procedure Einlesen1Click(Sender: TObject); procedure About1Click(Sender: TObject); procedure emailsenden1Click(Sender: TObject); procedure Fehlerberichtsenden1Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure WiderholenEingabe1Click(Sender: TObject); procedure WiderrufenEingabe1Click(Sender: TObject); procedure Lshcen1Click(Sender: TObject); procedure Kopieren1Click(Sender: TObject); procedure Einfgen1Click(Sender: TObject); procedure DRucken1Click(Sender: TObject); procedure EinrichtenDokument1Click(Sender: TObject); procedure Einstellungen1Click(Sender: TObject); private public end;
var Form1: TForm1; FSize : Integer; implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.Sichern1Click(Sender: TObject); begin if SaveDialog1.Execute then begin RichEdit1.lines.SaveToFile(SaveDialog1.FileName); end else Application.MessageBox('Die Datei konnte nicht erstellt werden.','Sicherungsfehler', mb_ICONSTOP or mb_OK); end;
procedure TForm1.Sichernunter1Click(Sender: TObject); begin if SaveDialog1.Execute then begin RichEdit1.lines.SaveToFile(SaveDialog1.FileName); end else Application.MessageBox('Die Datei konnte nicht erstellt werden.','Sicherungsfehler', mb_ICONSTOP or mb_OK); end;
procedure TForm1.Schlieen1Click(Sender: TObject); begin if Application.MessageBox('Möchten Sie LUCEd 1. Textverarbeitung wirklich beenden?', 'Programmende', mb_ICONQUESTION or mb_YESNOCANCEL)=IDYES then close; end;
procedure TForm1.extdokument1Click(Sender: TObject); begin if RichEdit1.modified =true then begin if Application.MessageBox('Möchten Sie wirklich ein neues Dokument erzeugen? Mit Klick auf "Ja" werden alle bisherigen Änderungen gelöscht!', 'Wirklich neues Dokument erstellen?', mb_ICONWARNING or mb_YESNOCANCEL)=IDYES then RichEdit1.lines.clear; end else begin RichEdit1.lines.clear; end; end; procedure TForm1.Einlesen1Click(Sender: TObject); begin if OpenDialog1.Execute then begin RichEdit1.lines.LoadFromFile(OpenDialog1.FileName); end else Application.MessageBox('Die Datei konnte nicht gelesen werden.','Lesefehler/Ladefehler', mb_ICONSTOP or mb_OK); end;
procedure TForm1.About1Click(Sender: TObject); begin AboutBox.show; end;
procedure TForm1.emailsenden1Click(Sender: TObject); begin if Application.MessageBox('LUCEd 1.0 Textverarbeitung versucht nun, ein email-Client auf Ihrem PC zu finden. ' + 'Falls eines vorhanden ist, wird es mit Klick auf "OK" geöffnent.', 'Versuche, emnail client zu finden und zu öffnen', mb_ICONINFORMATION or mb_OKCANCEL)=IDOK then SHELLEXECUTE (handle,'open','mailto:', '','',SW_SHOWNORMAL); end;
procedure TForm1.Fehlerberichtsenden1Click(Sender: TObject); begin SHELLEXECUTE (handle,'open','mailto:fledermaus-pfeil@web.de?subject=Fehlerbericht LUCEd 1.0 Textverarbeirtung','','',SW_SHOWNORMAL); end;
procedure TForm1.N3Click(Sender: TObject); begin if FontDialog1.Execute then begin RichEdit1.Font.Assign(FontDialog1.Font); end; end; procedure TForm1.WiderholenEingabe1Click(Sender: TObject); begin RichEdit1.Perform(EM_UNDO, 0, 0);
end;
procedure TForm1.WiderrufenEingabe1Click(Sender: TObject); begin RichEdit1.Perform(WM_UNDO, 0, 0); end;
procedure TForm1.Lshcen1Click(Sender: TObject); begin RichEdit1.lines.CleanupInstance; RichEdit1.lines.Clear; end;
procedure TForm1.Kopieren1Click(Sender: TObject); begin RichEdit1.CopyToClipboard; end;
procedure TForm1.Einfgen1Click(Sender: TObject); begin RichEdit1.pasteFromClipboard; end;
procedure TForm1.DRucken1Click(Sender: TObject); begin if PrintDialog1.execute then begin RichEdit1.print(''); end;
end; procedure TForm1.EinrichtenDokument1Click(Sender: TObject); begin if PrinterSetupDialog1.execute then begin RichEdit1.lines.IndexOf(''); end;
end; procedure TForm1.Einstellungen1Click(Sender: TObject); begin end;
end. |
Unit2:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53:
| unit Unit2;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls, Buttons, ExtCtrls; type TAboutBox = class(TForm) Panel1: TPanel; Label1: TLabel; Label2: TLabel; Label3: TLabel; Image1: TImage; BitBtn1: TBitBtn; Label4: TLabel; procedure BitBtn1Click(Sender: TObject); private public end;
var AboutBox: TAboutBox; implementation
{$R *.dfm}
procedure TAboutBox.BitBtn1Click(Sender: TObject); begin AboutBox.Close; end;
end. |
Unit3
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92:
| unit Unit3;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, ComCtrls, Buttons, ColorButton, iniFiles, AppEvnts; const IC_CLICK = WM_APP + 201; type TForm3 = class(TForm) PageControl1: TPageControl; TabSheet1: TTabSheet; Panel1: TPanel; Label1: TLabel; CheckBox1: TCheckBox; CheckBox2: TCheckBox; TabSheet2: TTabSheet; CheckBox3: TCheckBox; SpeedButton1: TSpeedButton; Panel2: TPanel; Panel3: TPanel; Label2: TLabel; Label3: TLabel; Edit1: TEdit; Label4: TLabel; Edit2: TEdit; ColorButton1: TColorButton; procedure ColorButton1Click(Sender: TObject); private public end;
var Form3: TForm3; ini: TIniFile; implementation
uses Unit1;
{$R *.dfm}
procedure TForm3.ColorButton1Click(Sender: TObject); begin ini :=TIniFile.create('C:\USRREG.lcn'); try ini.writeString('NameSpace','First_LastName',Edit1.text); ini.writeString('RegistrationKey','',Edit2.text); finally ini.free; end; end;
end. |
Danke im Voraus!!!
_________________ Lette-Verein MIA
|
|
Gausi
      
Beiträge: 8549
Erhaltene Danke: 478
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Mo 04.02.13 10:48
Hast du zwischendurch mit einer anderen/neueren Delphi-Version kompiliert und bist dann zur alten gewechselt?
Ein ähnliches Problem habe ich aktuell auch bei einer Nebenform - da liegts am IDhttp-Server, der unter XE2 ein paar weitere oder andere Eigenschaften hat. Meine Lösung war, die entsprechende Form auch mit der alten IDE zu öffnen und da die Fehler beim Laden "zu ignorieren".
_________________ We are, we were and will not be.
Für diesen Beitrag haben gedankt: Apo95
|
|
Apo95 
      
Beiträge: 129
Win2000, WinXP, WinServer 2003 Standard x86, Win7x64
Delphi 6 Enterprise, D2009 Architect, RAD Studio XE6 Architect
|
Verfasst: Do 07.02.13 22:27
Ne, habe ich nicht... Das ist alles in Delphi 6 geschrieben...
_________________ Lette-Verein MIA
|
|
WasWeißDennIch
      
Beiträge: 653
Erhaltene Danke: 160
|
Verfasst: Fr 08.02.13 09:32
Dann steht möglicherweise Müll in Deiner *.dfm. Wenn Du z.B. eine Integer-Property hast wie Left, dann kann es nicht sein, dass dieser aus der *.dfm 3.5 zugewiesen werden soll, das wäre dann ein ungültiger Eigenschaftswert.
Für diesen Beitrag haben gedankt: Apo95
|
|
|