Autor Beitrag
Sullivan5
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Di 14.04.09 17:13 
Bin ein ziemlicher Neuling und habe ein Problem mit dem .NET framework. Ich habe einige Windows-Forms-Anwendungen mit Delphi2005.NET (Version: Borland Developer Studio für Microsoft Windows Version 9.0.1935.22056 Update 3) erstellt, die auf meinem Rechner einwandfrei laufen, auch wenn ich sie über die zugehörigen exe-Dateien starte. Auf den Rechnern meiner Kollegen erhalte ich jedoch zwei verschiedene Fehlermeldungen im Verlauf der Programme. Starten lassen sie sich noch, jedoch beim ersten Rechenschritt treten Probleme auf. Die Fehlermeldungen sind folgende:

1.

"Unbehandelte Ausnahme in der Anwendung. [...]

Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist."

2.

"Eine unbehandelte Ausnahme ist in einer Komponente ihrer Anwendung aufgetreten. [...]
Der Index war außerhalb des Arraybereichs."


Ich vermute, ich muss die Projektoptionen so ändern, dass alle benötigten Dateien in der exe-Datei enthalten sind. Aber ich weiß es nicht und wenn das das Problem sein sollte, weiß ich auch nicht, wie ich die Optionen korrekt einstelle. Kann mir jemand helfen?

Grüße,

Philipp


Moderiert von user profile iconChristian S.: Topic aus Sonstiges (Delphi) verschoben am Di 14.04.2009 um 17:49
delphi10
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 447
Erhaltene Danke: 2

W2K, XP, Vista64, Win7 64
RAD-Studio 2010
BeitragVerfasst: Di 14.04.09 17:46 
Wenn es so ist, dass Dateien fehlen, so musst du diese in eine RES-Datei packen. Zuerst RC-Datei als TXT, die wird mit BRCC32.exe compiliert zu einer RES). Diese RES dann in eine Unit einbinden. Beispiel:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
implementation
uses Main;
{$R *.dfm}
{$R BMP.RES}


Inhalt einer RC-Datei als Beispiel:
//Titel/Type/Pfad
LOGO BITMAP N:\TOPDOC_Projekt\readlink\BitMaps\logo.bmp
Titel RT_FONT N:\TOPDOC_Projekt\readlink\BitMaps\Kr.ttf
Herz RCDATA N:\TOPDOC_Projekt\readlink\BitMaps\alien.GIF
StartR BITMAP N:\TOPDOC_Projekt\readlink\BitMaps\RoundButtonStart3.bmp
InfoLogo BITMAP N:\TOPDOC_Projekt\readlink\BitMaps\InfoLogo.bmp

Im Programm wird die Ressource wie folgt geladen:
ausblenden Delphi-Quelltext
1:
FormX.image1.Picture.Bitmap.LoadFromResourceName(hinstance,'LOGO');					

Vorher Image1 als Platzhalter auf der Form anlegen.
Oder eine GIF- Datei laden:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
uses GIFImage;
.
.
Procedure TForm3.GetGif(ResName:String; IMG:TImage);
Var bild : TGIFImage;
ResStream : TResourceStream;
begin
  bild := TGIFImage.Create;
  resstream := TResourceStream.Create(hInstance, ResName, RT_RCDATA);
  bild.LoadFromStream(ResStream);
  Img.Picture.Assign(bild);
  bild.free;
  ResStream.free;
end;

Du bekommst sicher noch einige Antworten, die Dir weiterhelfen.

_________________
Salus populi suprema lex esto
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Mi 15.04.09 14:32 
:welcome:

Bitte verlinke Posts in anderen Foren, damit man nachvollziehen kann, was anderswo schon geantwortet wurde, und sich so nicht umsonst (und unbezahlt ;) ) Mühe macht.

Du wirst hier wenige Leute finden, die dir bei Delphi.NET helfen können, nachdem es durch Delphi Prism ersetzt wurde. Steig lieber direkt auf Prism (oder auch Delphi.Win32) um.

_________________
>λ=