Jueves 14 de Noviembre de 2024, 23:01
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
codeblocks y Unicode
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: codeblocks y Unicode (Leído 2334 veces)
maxstepin
Miembro activo
Mensajes: 32
codeblocks y Unicode
«
en:
Martes 20 de Octubre de 2009, 22:05 »
0
hola.
el siguiente codigo:
Código: C
int
WINAPI WinMain
(
HINSTANCE actual
,
HINSTANCE previa
,
LPSTR parametros
,
int
cmd
)
{
MessageBoxA
(
NULL
,
"ascii"
,
NULL
,
0
)
;
MessageBoxW
(
NULL
,
L
"unicode"
,
NULL
,
0
)
;
MessageBox
(
NULL
,
"cual"
,
NULL
,
0
)
;
}
lo he probado bajo vc++ sin problemas, puedo cambiar la configuracion del proyecto para multibyte o unicode para poder especificar una cosa u otra.
Pero, en codeblocks no encuentro tal opcion. Donde puedo configurar codeblocks para que el programa salga unicode?
no sera poniendo:
Código: C
#define UNICODE
al principio del fichero? yo ya lo he probado y no funciona.
gracias adelantadas
Tweet
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: codeblocks y Unicode
«
Respuesta #1 en:
Martes 20 de Octubre de 2009, 23:11 »
0
Los #define tienen que estar antes del #include de windows.h para que funcione.
Código: C++
#define UNICODE
#define _UNICODE
#include <windows.h>
#include <tchar.h>
int
WINAPI WinMain
(
HINSTANCE actual,
HINSTANCE previa,
LPSTR parametros,
int
cmd
)
{
MessageBox
(
NULL
, _T
(
"cual"
)
,
NULL
,
0
)
;
}
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
maxstepin
Miembro activo
Mensajes: 32
Re: codeblocks y Unicode
«
Respuesta #2 en:
Miércoles 21 de Octubre de 2009, 22:50 »
0
Eternal Idol, funciono! gracias por la ayuda, rapida y concisa. Porque tiene que estar delante de el include?
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: codeblocks y Unicode
«
Respuesta #3 en:
Miércoles 21 de Octubre de 2009, 23:15 »
0
De nadas
Las funciones de la API estan declaradas en windows.h (o en alguna otra cabecera que esta incluya directa o indirectamente), por ejemplo MessageBox sera MessageBoxA sino esta definido UNICODE/_UNICODE y MessageBoxW si lo esta. Extracto del SDK:
Código: C++
WINUSERAPI
int
WINAPI
MessageBoxA
(
__in_opt HWND hWnd,
__in_opt LPCSTR lpText,
__in_opt LPCSTR lpCaption,
__in UINT uType
)
;
WINUSERAPI
int
WINAPI
MessageBoxW
(
__in_opt HWND hWnd,
__in_opt LPCWSTR lpText,
__in_opt LPCWSTR lpCaption,
__in UINT uType
)
;
#ifdef UNICODE
#define MessageBox MessageBoxW
#else
#define MessageBox MessageBoxA
#endif // !UNICODE
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
maxstepin
Miembro activo
Mensajes: 32
Re: codeblocks y Unicode
«
Respuesta #4 en:
Jueves 22 de Octubre de 2009, 19:06 »
0
OK, gracias. Nunca te acostaras sin saber una cosa mas.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
codeblocks y Unicode