AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

unsafe code

Ein Thema von EWeiss · begonnen am 19. Mär 2009 · letzter Beitrag vom 19. Mär 2009
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

unsafe code

  Alt 19. Mär 2009, 15:20
Wenn ich unter Compiler Messagen Unsafe Code aktiviere
bekomme ich jede menge dieser Warnungen.

[Pascal Warning] Winamp_Service.pas(270): W1047 Unsafe code '@ operator'
(LoadStringA(Instance^, ID^, @Buffer_A[0], SizeOf(Buffer_A) - 1) <> 0) then Wie kann ich das korrigieren?

gruss Emil
  Mit Zitat antworten Zitat
19. Mär 2009, 15:22
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Delphi-Frage
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: unsafe code

  Alt 19. Mär 2009, 15:22
Zitat von EWeiss:
Wenn ich unter Compiler Messagen Unsafe Code aktiviere
bekomme ich jede menge dieser Warnungen.

...

Wie kann ich das korrigieren?
Einfach Schalter wieder deaktivieren.
Mit dem Tod von VCL.NET und WinForms in Delphi ist dieser Schalter auch tod. ist nur für eine .NET-Portierungs-Vorbereitung relevant.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

Re: unsafe code

  Alt 19. Mär 2009, 15:28
Zitat von Bernhard Geyer:
Zitat von EWeiss:
Wenn ich unter Compiler Messagen Unsafe Code aktiviere
bekomme ich jede menge dieser Warnungen.

...

Wie kann ich das korrigieren?
Einfach Schalter wieder deaktivieren.
Mit dem Tod von VCL.NET und WinForms in Delphi ist dieser Schalter auch tod. ist nur für eine .NET-Portierungs-Vorbereitung relevant.
Und das selbe gilt dann für "unsafe Type" und "unsafe Typecast".
Wurden die in D2009 entfernt ? Oder immer noch drin.
Frage mich was das für einen sinn macht ohne Funktion.

Hatte ihn bisher auch aus
Aber selbst bei warnungen bin ich vorsichtig.

gruss Emil
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: unsafe code

  Alt 19. Mär 2009, 15:35
Zitat von EWeiss:
Und das selbe gilt dann für "unsafe Type" und "unsafe Typecast".
"unsage" -> Managed Laufzeitumgebund

Zitat von EWeiss:
Wurden die in D2009 entfernt ? Oder immer noch drin.
Frage mich was das für einen sinn macht ohne Funktion.
k.A. Ist evtl. noch drin da die VCL.NET vermutlich relativ spät in der Entwicklung von D2009 gestorben ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#6

Re: unsafe code

  Alt 19. Mär 2009, 15:36
Zitat von EWeiss:
Und das selbe gilt dann für "unsafe Type" und "unsafe Typecast".
Wurden die in D2009 entfernt ? Oder immer noch drin.
Frage mich was das für einen sinn macht ohne Funktion.
Der Compiler kann das technisch gesehen noch, auch wenn die generierung von IL Code nicht mehr verwendet wird und nicht mehr gepflegt wird.

Nur: Das managed-Zeug aus dem Compiler rauswerfen sind Änderungen, die potentiell eine Menge Bugs einführen können. Also lieber den Code und die Warnungen drin lassen, als Fehler zu riskieren. Zumal die Warnungen ja ausschaltbar sind.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#7

Re: unsafe code

  Alt 19. Mär 2009, 15:45
Danke ..
Hat mich mal interessiert da ich nicht genau wußte wofür diese Schalter waren
und warum man die Fehler (Warnungen) nicht beheben kann.

gruss Emil
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#8

Re: unsafe code

  Alt 19. Mär 2009, 16:06
Kann man prinzipiell schon. Man muss den Code halt so umbauen dass er keine Pointer verwendet...

Hat auf der einen Seite den Vorteil, dass man tatsächlich nicht mehr wild im Speicher rumpointert und irgendwelche Adressen auf irgendwelche Typen castet, die nicht zwingend zusammenpassen müssen - will heissen der Code wird wartbarer. Auf der anderen Seite ist das freilich schon ein Aufwand, der gemacht werden muss und den man dann auch noch durchtesten sollte. Ist immer ne Frage ob die Vorteile den Aufwand rechtfertigen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: unsafe code

  Alt 19. Mär 2009, 16:10
Zitat von Phoenix:
Kann man prinzipiell schon. Man muss den Code halt so umbauen dass er keine Pointer verwendet...
Ob das zu 100% möglich ist
Spätestens beim Aufruf von C-Like-DLL's wird man nicht mehr darum herum kommen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


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 01:26 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