AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi ReadFileEx/WriteFileEx verwenden: Fehler in Windows.pas?
Thema durchsuchen
Ansicht
Themen-Optionen

ReadFileEx/WriteFileEx verwenden: Fehler in Windows.pas?

Ein Thema von EConvertError · begonnen am 2. Feb 2008 · letzter Beitrag vom 10. Feb 2008
Antwort Antwort
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#1

Re: ReadFileEx/WriteFileEx verwenden: Fehler in Windows.pas?

  Alt 2. Feb 2008, 20:16
Zitat von DGL-luke:
PS: const bedeutet pass-by-reference, genauso wie var und out. und es gibt bei diesen drei schlüsselwörtern in delphi keinen unterschied außer der sie repräsentierenden zeichenfolge.
EDIT: Und der Compiler weigert sich, die neuzuweisung eines const-params zu übersetzen. naja.
Dein Edit ist ja der Unterschied. Der Delphi Compiler macht den Unterschied zwischen den Aufrufkonventionen.

Aber dass Windows.pas hier einfach ein Datentypentyp, statt einem Zeiger auf den Datentyp verwendet finde ich schon sehr falsch. Es mag zwar funktionieren, jedoch nicht in allen Fällen, wie man sieht.

Ich sehe grad übrigens, dass TPipeInstance falsch übersetzt ist. Die Arrays müssen strenggenommen von 0 bis BUFSIZE-1 gehen.



Zitat von EConvertError:
Ja, doch so im Großen und Ganzen verstehe ich doch sehr gut, was die da tun.
Ich meine nicht, was du tust, sondern was das Beispiel micht. Ehrlich gesagt, musste ich auch erst ein paar mal lesen, um es zu verstehen.
Die erweitern den record TOverlaped, indem sie ihn als LPPIPEINST neu deklarieren. Das macht man indem man einfach den vorhanden Record an die erste Stelle im neuen Record setzt. Das ist (fast) so, als ob man einfach die Inhalte des Overlapped records in den neuen an den Anfang kopiert. Jede Funktion, die ein Zeiger auf ein Overlapped-Record erwartet, arbeitet dann mit dieser struktur fein. Den Rest im Record verwenden die Callbackfunktionen für eigene Zwecke.


Die Nullen jedes zweite Byte deuten scharf auf Unicode hin. Du musst es natürlich der Gegenseite gerecht machen und dies erkennen.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  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 09:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz