Español
Stammtisch & Café

CreateFileMapping.

 
CreateFileMapping producido una Dateiabbildungsobjekt y liefert dessen Handle zurück. Filemapping es una einfache Art komplette (auch muy große) Archivos en el Speicher a behalten y de más Prozessen de darauf zugreifen a puede. So puede sowohl bastante effektive Pipes producido como auch muy schnelle Bearbeitungszeiten erreicht voluntad.

Deklaration:

DEF @CreateFileMapping(6) !kernel32,CreateFileMappingA

Parámetro:

1.Parámetro: Handle uno geöffneten Expediente oder $FFFFFFFF como Handle en una virtuellen Speicherbereich.
2.Parámetro: Security-Attributes Struktur oder para el erzeugte Objeto. Kann auch 0 ser.
3.Parámetro: Flag, el el erlaubten Zugriff regelt. Für el deseado Zugriff muß el Filehandle ebenfalls el passenden Accessrechte haben. Flags puede con | addiert voluntad.=>
-$2 = Nur lesen.
-$4 = Carta y lesen.
-$8 = Lesen y escribir, pero no en el Platte. Bajo NT-basierten Systemen escribir sólo en el aktuellen Prozess.
Dazu kann uno el folgenden Speicher-Flags con | addiert voluntad: =>
-$8000000 = Alloziert physikalischen Speicher en el Speicher oder en el Paging-Expediente des Systems en el Plattefür todas las partes en una Abschnitt (Standard)
-$1000000 = El por el Handle en Parámetro 1 angegebene Expediente es una EXE. Parámetro 2 y el Zugriffsrechte de Parámetro 3 voluntad de el Expediente genommen.
-$4000000 = Reserviert todas las páginas uno Abschnitts, sin physikalischen Speicher a allozieren. Dieser reservierte Speicherbereich kann no vn otro Allozierungsoparationen werwendet voluntad, a él freigegeben se. Reservierte Páginas puede en folgenden Aufrufen el Función VirtualAlloc() weitergegeben voluntad. Dieser Flag es sólo gültig, si para Parámetro 1 $FFFFFFFF definiert wurde!
Zu $8000000 oder $4000000 kann entonces folgender Flag con | addiert voluntad: =>
-$10000000 = Alle Páginas uno Abschnitts voluntad como „nicht cachefähig“ gekennzeichnet.
4.Parámetro: El oberen 32 Bits el Größe des gemappten Bereichs (para >=4GB). Kann en el Regel 0 bleiben.
5.Parámetro: El unteren 32 Bits el Größe des gemappten Bereichs.
6.Parámetro: Adresse uno Cuerdas oder Bereichsvariable con un String, el una beliebigen Namen para el Mapping Objeto enthält.

Rückgabewert:

0 en Misserfolg, ansonsten el Handle en el Speicherbereich.

Ejemplo:
KompilierenMarcaSeparación
Def @MapViewOfFile(5) !kernel32,MapViewOfFile
DEf @UnmapViewOfFile(1) !kernel32,UnmapViewOfFile
DEF @CopyMemory(3) !kernel32,RtlMoveMemory
WINDOWSTYLE 31+512
Windowtitle Hier wird die Variable erzeugt
WINDOW 0,0-300,400
Declare Variable&,Tick&,Name$,Ausgelesen#
Declare Speicherhandle&,Speicheraddr&
Let Name$=AH-Variable
LET Speicherhandle&=@CreateFileMapping($FFFFFFFF,0,4,0,4,@addr(Name$))
LET Speicheraddr&=@MapViewOfFile(Speicherhandle&,2,0,0,0)
Drawtext 0,50,Handle des Speicherbereichs:+@STR$(Speicherhandle&)
LET TICK&=&GETTICKCOUNT

Whilenot %MENUITEM=-2

    IF &GETTICKCOUNT-Tick&>10000

        Let Variable&=@RND(1000)
        @CopyMemory(Speicheraddr&,@addr(Variable&),4)
        LET TICK&=&GETTICKCOUNT

    endif

    DIM Ausgelesen#,256
    @CopyMemory(Ausgelesen#,Speicheraddr&,4)
    Drawtext 0,80,Variale=+@STR$(@LONG(Ausgelesen#,0))+
    Dispose Ausgelesen#
    Sleep 10

WEND

@UnmapViewOfFile(Speicheraddr&)
@CloseHandle(Speicherhandle&)
02.04.2005  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

3.186 Views

Untitledvor 0 min.
Ernst12.05.2014
Andre Rohland24.02.2013
Ragnar Rehbein10.08.2012
Andreas Miethe06.05.2012

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie