Condividi tramite


Funzione GetWindowTextW (winuser.h)

Copia il testo della barra del titolo della finestra specificata (se presente) in un buffer. Se la finestra specificata è un controllo , il testo del controllo viene copiato. Tuttavia, GetWindowText non può recuperare il testo di un controllo in un'altra applicazione.

Sintassi

int GetWindowTextW(
  [in]  HWND   hWnd,
  [out] LPWSTR lpString,
  [in]  int    nMaxCount
);

Parametri

[in] hWnd

Tipo: HWND

Handle per la finestra o il controllo contenente il testo.

[out] lpString

Tipo: LPTSTR

Buffer che riceverà il testo. Se la stringa è lunga o più lunga del buffer, la stringa viene troncata e terminata con un carattere Null.

[in] nMaxCount

Tipo: int

Numero massimo di caratteri da copiare nel buffer, incluso il carattere Null. Se il testo supera questo limite, viene troncato.

Valore restituito

Tipo: int

Se la funzione ha esito positivo, il valore restituito è la lunghezza, in caratteri, della stringa copiata, senza includere il carattere null di terminazione. Se la finestra non ha barra del titolo o testo, se la barra del titolo è vuota o se la finestra o l'handle di controllo non è valido, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Questa funzione non può recuperare il testo di un controllo di modifica in un'altra applicazione.

Commenti

Se la finestra di destinazione è di proprietà del processo corrente, GetWindowText fa sì che un messaggio di WM_GETTEXT venga inviato alla finestra o al controllo specificato. Se la finestra di destinazione è di proprietà di un altro processo e ha un didascalia, GetWindowText recupera la finestra didascalia testo. Se la finestra non ha un didascalia, il valore restituito è una stringa Null. Questo comportamento dipende dalla progettazione. Consente alle applicazioni di chiamare GetWindowText senza rispondere se il processo proprietario della finestra di destinazione non risponde. Tuttavia, se la finestra di destinazione non risponde e appartiene all'applicazione chiamante, GetWindowText causerà la mancata risposta dell'applicazione chiamante.

Per recuperare il testo di un controllo in un altro processo, inviare direttamente un messaggio WM_GETTEXT anziché chiamare GetWindowText.

Esempio

Per un esempio, vedere Invio di un messaggio.

Nota

L'intestazione winuser.h definisce GetWindowText come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll
Set di API ext-ms-win-ntuser-window-l1-1-4 (introdotto in Windows 10 versione 10.0.14393)

Vedi anche

Informazioni concettuali

GetWindowTextLength

Riferimento

SetWindowText

WM_GETTEXT

Windows