Condividi tramite


Identificazione delle funzioni nelle DLL

L'identità di una funzione di DLL è formata dai seguenti elementi:

  • Nome o numero ordinale della funzione

  • Nome del file di DLL in cui si trova l'implementazione

Se ad esempio si specifica la funzione MessageBox in User32.dll, si identificherà la funzione (MessageBox) e la relativa posizione (User32.dll, User32 o user32). L'interfaccia per la programmazione delle applicazioni di Microsoft Windows (API Win32) può contenere due versioni di ciascuna funzione che gestisce caratteri e stringhe: una versione ANSI con caratteri a byte singolo e una versione Unicode con caratteri a byte doppio. Se omesso, il set di caratteri predefinito, rappresentato dal campo CharSet, è ANSI. Alcune funzioni possono avere più di due versioni.

MessageBoxA è il punto di ingresso ANSI per la funzione MessageBox, MessageBoxW è la versione Unicode. Per ottenere un elenco dei nomi di funzioni per una specifica DLL, ad esempio user32.dll, è possibile eseguire una vasta gamma di strumenti della riga di comando. Per ottenere nomi di funzioni, ad esempio, si può utilizzare dumpbin /exports user32.dll o link /dump /exports user32.dll.

È possibile rinominare una funzione non gestita a proprio piacimento all'interno del proprio codice, purché si associ il nuovo nome al punto di ingresso originale nella DLL. Per istruzioni sulla ridenominazione di una funzione di DLL non gestita nel codice sorgente gestito, vedere Specifica di un punto di ingresso.

Platform invoke permette di controllare una grossa parte del sistema operativo tramite la chiamata delle funzioni della API Win32 e di altre DLL. Oltre alla API Win32, platform invoke consente di accedere a numerose altre API e DLL.

Nella tabella che segue vengono descritte diverse DLL comunemente utilizzate contenute nella API Win32.

DLL

Descrizione del contenuto

GDI32.dll

Funzioni dell'interfaccia di gestione periferiche grafiche (GDI, Graphics Device Interface) per gli output di periferica, quali quelli per la gestione del disegno e dei caratteri.

Kernel32.dll

Funzioni di basso livello del sistema operativo per la gestione della memoria e delle risorse.

User32.dll

Funzioni Windows per la gestione della messaggistica, dei timer, dei menu e delle comunicazioni.

Per la documentazione completa sulla API Win32, vedere Platform SDK. Per esempi della costruzione di dichiarazioni basate su .NET da utilizzare con platform invoke, vedere Marshalling dei dati con chiamata al sistema operativo.

Vedere anche

Concetti

Utilizzo di funzioni di DLL non gestite

Specifica di un punto di ingresso

Creazione di una classe che contenga le funzioni di DLL

Creazione di prototipi nel codice gestito

Altre risorse

Chiamata a una funzione di DLL