Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]Byte e unsigned char

    ciao ho un problema nella conversione da unsigned char a Byte , penso :

    HCRYPTKEY hPubKey ;//chiave Pubblica
    file publicKey.h
    codice:
    unsigned char PublicKey[148]=
    {
    	0x06,0x02,0x00,0x00,0x00,0x24,0x00,0x00,0x52,0x53,0x41,
    	0x31,0x00,0x04,0x00,0x00,0x01,0x00,0x00,0x00,0xAF,0xAE,
    	0x59,0xED,0xCB,0x62,0x68,0xC4,0x02,0x77,0x38,0x8A,0xA6,
    	0x65,0x21,0x40,0x74,0xBE,0x63,0xDA,0x52,0xCD,0xD1,0x3E,
    	0xEB,0x4F,0xFC,0xA5,0x05,0x7F,0x69,0x18,0x84,0x54,0x8D,
    	0x85,0x9F,0xC2,0x5B,0x28,0x2F,0x8D,0x20,0x6A,0x20,0x5C,
    	0xCD,0x37,0x26,0xD9,0xC2,0x0A,0x3E,0xA9,0xA5,0x5A,0x73,
    	0x0C,0x3E,0x0D,0x37,0x32,0xB8,0xDB,0xDA,0xDD,0x17,0xE5,
    	0xD1,0x69,0xC0,0x37,0xCD,0x98,0x92,0x13,0x5F,0x1E,0x4E,
    	0x30,0x21,0xD3,0x2C,0xCF,0xE7,0xBE,0x04,0x50,0x89,0x9C,
    	0x9D,0xF3,0x2E,0x81,0x62,0xCE,0x49,0x29,0xE8,0x25,0x4E,
    	0x9F,0x3E,0xD4,0xDB,0xD5,0xDE,0xD8,0xCB,0x39,0x98,0xC9,
    	0xE4,0xF7,0xC8,0xD6,0xFE,0x65,0x5C,0xAE,0x31,0x65,0x37,
    	0xB9,0xB8,0xBE,0x37,0xC6,
    };
    codice:
    BYTE* pb = new BYTE[sizeof(PublicKey)];
    memcpy(pb, PublicKey, sizeof(PublicKey));
    
    if(!CryptImportKey(hProv, pb, sizeof(pb), 0, 0, &hPubKey)){
        ///ERRORE! !!!!!!!!!!!!!
    }

    questo codice che mi funziona sotto xp non va sotto win 7 e non riesco a capire perchè!
    trovate qualcosa di sbagliato?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    "Non va" in che senso?

    Errori? Messaggi? Valori sbagliati?


    P.S. Quel sizeof(pb) cosa pensi debba restituire ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente bannato
    Registrato dal
    Apr 2012
    Messaggi
    510
    Dovrebbe ritornare 148 come valore, al limite prova a dichiararlo così:

    codice:
    BYTE* pb = new BYTE[sizeof(PublicKey) / sizeof(unsigned char)];
    Anche se non sono sicuro che possano esistere unsigned char con lunghezza diversa da 1 byte (magari qualcuno mi può confermare).

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Come detto, mi riferivo al sizeof(pb) ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.