AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

.NET Anwendung stürzt ab

Ein Thema von paperboy · begonnen am 26. Okt 2009 · letzter Beitrag vom 26. Okt 2009
Antwort Antwort
Seite 3 von 3     123
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#21

Re: .NET Anwendung stürzt ab

  Alt 26. Okt 2009, 20:40
Du benutzt da "datei.Free". Deshalb muss ich wohl annehmen, dass du entweder kein Oxygene nutzt, oder ShineOn benutzt.
ShineOn ist eine Library, die Delphi-Krams in .Net zu emulieren versucht.

Eine rein theorethische Möglickeit für eine TypeloadEx wäre das Free.
Aber nur um 5 Ecken und 7 Kanten...
In der Datei TObject.pas würdest du das hier finden und wenn alle Odds und der Rest des Universums gegen dich verschworen wären, wäre es vllt möglich, dass der class ctor von DisposableHelper<FileStream> mit einer SecurityException stirbt.
Delphi-Quellcode:
105   procedure TObjectExtender.Free(o: Object);
106   begin
107    o.Destroy;
108   end;
109   
110   type
111    DisposableHelper<T> nested in TObjectExtender
112    = private static class
113    public
114    constructor;
115    property DisposeCall : Action<T>; readonly;
116    procedure DisposeReferenceType(o: T);
117    procedure DisposeValueType(o: T);
118    end;
119   
120   procedure TObjectExtender.Destroy<T>(o: T);
121   begin
122    // dispose, if necessary. noop, otherwise.
123    DisposableHelper<T>.DisposeCall(o);
124   end;
125   
126   procedure TObjectExtender.Free<T>(o: T);
127   begin
128    Destroy<T>(o);
129   end;
130   
131   constructor TObjectExtender.DisposableHelper<T>;
132   begin
133    var typeRef := typeOf(T);
134    var call : Action<T>;
135    // dispose, if necessary. noop, otherwise.
136    if not typeRef.IsSealed
137    or typeOf(IDisposable).IsAssignableFrom(typeRef) then
138    call := @DisposeReferenceType
139    else
140    call := @DisposeValueType;
141   
142    DisposeCall := call;
143   end;
144   
145   procedure TObjectExtender.DisposableHelper<T>.DisposeReferenceType(o: T);
146   begin
147    TObjectExtender.Destroy(Object(o));
148   end;
149   
150   procedure TObjectExtender.DisposableHelper<T>.DisposeValueType(o: T);
151   begin
152    // noop
153   end;
Edit: Okay da hätte ich wohl vorher die Seite aktualisieren sollen.
Ich lasse es trotzdem drin, vllt. hilft es ja dem nächsten, der über sowas stolpert...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
paperboy

Registriert seit: 10. Jun 2009
71 Beiträge
 
RAD-Studio 2009 Arc
 
#22

Re: .NET Anwendung stürzt ab

  Alt 26. Okt 2009, 21:11
so danke nochmal an alle für eure mühen... hab mal auf die schnelle die testversion des neuen prism 2010 heruntergeladen mein projekt
portiert und alles läuft jetzt ohne probleme... nun ist die exe auch nur 450kb groß und läuft ohne zu murren auf xp vista und win7 auch wenn kein delphi
present ist (wobei ich nicht weis ob es vorher mit delphi geklappt hätte)...

also nochmal danke und einen schönen abend noch

lg paperboy
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz