elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Error en CryptStringToBinary usando wchar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Error en CryptStringToBinary usando wchar  (Leído 5,816 veces)
MeTaD

Desconectado Desconectado

Mensajes: 84


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #10 en: 30 Marzo 2013, 03:22 am »

No sé a que te referís, supuestamente si creas un proyecto de aplicación Win32 no tiene porque agregarte dependencia a .net framework... (eso creo)


B#

Vale, no importa eso ahora jejeje gracias de todas formas (aunque creo que en una pc sin .net framework no te iniciará la aplicación, repito, CREO), estoy teniendo otro problema... en el proyecto completo es necesario utilizar el archivo ntdef.h pero visual studio me da error, dice que no lo encuentra... ¿qué puedo hacer

Es algo problemática mi situación, por un lado, con Dev-c++ tengo problema con CryptStringToBinary y por el otro con VC++ me da el problema de ntdef.h :S


En línea

BloodSharp


Desconectado Desconectado

Mensajes: 802


El Messi-Vegeta :D


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #11 en: 30 Marzo 2013, 04:03 am »

Vale, no importa eso ahora jejeje gracias de todas formas (aunque creo que en una pc sin .net framework no te iniciará la aplicación, repito, CREO), estoy teniendo otro problema... en el proyecto completo es necesario utilizar el archivo ntdef.h pero visual studio me da error, dice que no lo encuentra... ¿qué puedo hacer

Copiar las definiciones en los archivos que necesites (?

Es algo problemática mi situación, por un lado, con Dev-c++ tengo problema con CryptStringToBinary y por el otro con VC++ me da el problema de ntdef.h :S

Con Dev-C+Mingw 3.4.2 tuve que llamar a CryptStringToBinary usando LoadLibrary y GetProcAddress, en cuanto al archivo ntdef.h no está en la sdk de visual pero está en la wdk y las definiciones de la wdk y de mingw en el archivo ntdef.h son completamente distintas  :-(


B#


En línea



MeTaD

Desconectado Desconectado

Mensajes: 84


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #12 en: 30 Marzo 2013, 04:19 am »

Copiar las definiciones en los archivos que necesites (?

Con Dev-C+Mingw 3.4.2 tuve que llamar a CryptStringToBinary usando LoadLibrary y GetProcAddress, en cuanto al archivo ntdef.h no está en la sdk de visual pero está en la wdk y las definiciones de la wdk y de mingw en el archivo ntdef.h son completamente distintas  :-(


B#
Podrías por favor mostrarme cómo lo hiciste con dev-c++??

PD: jejeje para aprender me gusta más empezar por lo difícil  :laugh:
En línea

BloodSharp


Desconectado Desconectado

Mensajes: 802


El Messi-Vegeta :D


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #13 en: 30 Marzo 2013, 04:38 am »

Podrías por favor mostrarme cómo lo hiciste con dev-c++??

PD: jejeje para aprender me gusta más empezar por lo difícil  :laugh:

Código
  1. #include <windows.h>
  2. #include <stdio.h>
  3. #include <conio.h>
  4.  
  5. #define CRYPT_STRING_HEX 0x00000004
  6.  
  7. typedef BOOL (WINAPI *TCryptStringToBinaryW)(LPCWSTR pszString,DWORD cchString,DWORD dwFlags,BYTE *pbBinary,DWORD *pcbBinary,DWORD *pdwSkip,DWORD *pdwFlags);
  8. TCryptStringToBinaryW pCryptStringToBinaryW=NULL;
  9.  
  10. int main()
  11. {
  12.    pCryptStringToBinaryW=(TCryptStringToBinaryW)GetProcAddress(LoadLibrary("Crypt32.dll"),"CryptStringToBinaryW");
  13.    if(!pCryptStringToBinaryW){printf("Error 404: CrypStringToBinaryW not found :S\n");return 1;}
  14.  
  15.    BOOL bIsSuccess = FALSE;
  16.    WCHAR szKey[] = L"01000000D08C9DDF0115D1118C7A00C04FC297EB01000...";
  17.    BYTE byKey[1024];
  18.    DWORD cbBinary, dwFlags, dwSkip;
  19.    bIsSuccess = pCryptStringToBinaryW(szKey, lstrlenW(szKey), CRYPT_STRING_HEX, byKey, &cbBinary, &dwSkip, &dwFlags);
  20.    printf("%i/%i",bIsSuccess,byKey);
  21.    getch();
  22.    return 0;
  23. }
  24.  


B#
En línea



MeTaD

Desconectado Desconectado

Mensajes: 84


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #14 en: 30 Marzo 2013, 04:47 am »

Código
  1. #include <windows.h>
  2. #include <stdio.h>
  3. #include <conio.h>
  4.  
  5. #define CRYPT_STRING_HEX 0x00000004
  6.  
  7. typedef BOOL (WINAPI *TCryptStringToBinaryW)(LPCWSTR pszString,DWORD cchString,DWORD dwFlags,BYTE *pbBinary,DWORD *pcbBinary,DWORD *pdwSkip,DWORD *pdwFlags);
  8. TCryptStringToBinaryW pCryptStringToBinaryW=NULL;
  9.  
  10. int main()
  11. {
  12.    pCryptStringToBinaryW=(TCryptStringToBinaryW)GetProcAddress(LoadLibrary("Crypt32.dll"),"CryptStringToBinaryW");
  13.    if(!pCryptStringToBinaryW){printf("Error 404: CrypStringToBinaryW not found :S\n");return 1;}
  14.  
  15.    BOOL bIsSuccess = FALSE;
  16.    WCHAR szKey[] = L"01000000D08C9DDF0115D1118C7A00C04FC297EB01000...";
  17.    BYTE byKey[1024];
  18.    DWORD cbBinary, dwFlags, dwSkip;
  19.    bIsSuccess = pCryptStringToBinaryW(szKey, lstrlenW(szKey), CRYPT_STRING_HEX, byKey, &cbBinary, &dwSkip, &dwFlags);
  20.    printf("%i/%i",bIsSuccess,byKey);
  21.    getch();
  22.    return 0;
  23. }
  24.  


B#

Hermano, me podés explicar lo que hiciste?, es posible hacer esto mismo con CryptUnprotectData?
En línea

BloodSharp


Desconectado Desconectado

Mensajes: 802


El Messi-Vegeta :D


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #15 en: 30 Marzo 2013, 05:02 am »

Hermano, me podés explicar lo que hiciste?

Google y msdn no muerden :P

http://msdn.microsoft.com/en-us/library/windows/desktop/ms683212

(...), es posible hacer esto mismo con CryptUnprotectData?

Si, para cualquier rutina que sea exportada de cualquier modulo que esté activo en tu proceso...


B#
En línea



MeTaD

Desconectado Desconectado

Mensajes: 84


Ver Perfil
Re: Error en CryptStringToBinary usando wchar
« Respuesta #16 en: 30 Marzo 2013, 05:04 am »

Google y msdn no muerden :P

http://msdn.microsoft.com/en-us/library/windows/desktop/ms683212

Si, para cualquier rutina que sea exportada de cualquier modulo que esté activo en tu proceso...


B#
Muchísimas gracias, haz sido muy paciente y servicial, de verdad, gracias... jajja sé que no muerde pero digo yo que es mejor que alguien más humano expliquee jajjaja, disculpa es que te repito, soy nuevo en c++ x_x pero gracias de verdad, un millón, trataré de hacerlo yo mismo con cryptunprotectdata y te cuento como me fue

MODIFICACION:
Bueno, funcionó, no dio error, pero la función que quiero que haga no la está haciendo bien, mañana crearé otro hilo liberando todo el código para ver si alguien me puede ayudar, IEAX, te debo mucho, muchísimas gracias
« Última modificación: 30 Marzo 2013, 05:40 am por MeTaD » En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines