Función GetMenuStringA (winuser.h)
Copia la cadena de texto del elemento de menú especificado en el búfer especificado.
Sintaxis
int GetMenuStringA(
[in] HMENU hMenu,
[in] UINT uIDItem,
[out, optional] LPSTR lpString,
[in] int cchMax,
[in] UINT flags
);
Parámetros
[in] hMenu
Tipo: HMENU
Identificador del menú.
[in] uIDItem
Tipo: UINT
Elemento de menú que se va a cambiar, determinado por el parámetro uFlag .
[out, optional] lpString
Tipo: LPTSTR
Búfer que recibe la cadena terminada en null. Si la cadena es tan larga o más larga que lpString, la cadena se trunca y se agrega el carácter nulo de terminación. Si lpString es NULL, la función devuelve la longitud de la cadena de menú.
[in] cchMax
Tipo: int
Longitud máxima, en caracteres, de la cadena que se va a copiar. Si la cadena es mayor que el máximo especificado en el parámetro nMaxCount , se truncan los caracteres adicionales. Si nMaxCount es 0, la función devuelve la longitud de la cadena de menú.
[in] flags
Tipo: UINT
Indica cómo se interpreta el parámetro uIDItem . Este parámetro puede ser uno de los siguientes valores.
Valor devuelto
Tipo: int
Si la función se ejecuta correctamente, el valor devuelto especifica el número de caracteres copiados en el búfer, sin incluir el carácter nulo de terminación.
Si la función no se realiza correctamente, el valor devuelto es cero.
Si el elemento especificado no es de tipo MIIM_STRING o MFT_STRING, el valor devuelto es cero.
Comentarios
El parámetro nMaxCount debe ser uno mayor que el número de caracteres de la cadena de texto para dar cabida al carácter nulo de terminación.
Si nMaxCount es 0, la función devuelve la longitud de la cadena de menú.
Advertencia de seguridad
El parámetro lpString es un búfer TCHAR y nMaxCount es la longitud de la cadena de menú en caracteres. Cambiar el tamaño de estos parámetros incorrectamente puede provocar el truncamiento de la cadena, lo que provoca una posible pérdida de datos.Ejemplos
Para obtener un ejemplo, vea Crear aceleradores editables de usuario.
Nota
El encabezado winuser.h define GetMenuString como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winuser.h (incluya Windows.h) |
Library | User32.lib |
Archivo DLL | User32.dll |
Conjunto de API | ext-ms-win-ntuser-menu-l1-1-3 (introducido en Windows 10, versión 10.0.14393) |
Consulte también
Conceptual
Referencia