Quote Originariamente inviata da shodan Visualizza il messaggio
Il vero problema era qui:
codice:
CharToOemBuffA(tds, tds, sizeof(tds));
tds è un puntatore e come tale la sua sizeof() è 4byte (32bit) o 8byte (64bit) per cui al massimo i caratteri convertiti erano quella quantità. Ricorda che un array passato a una funzione è convertito implicitamente in un puntatore al primo elemento.
Perciò la chiave di tutto il ragionamento, se ho capito bene, è imporre l'array di char strano[] come const, in maniera tale che la funzione riceva in ingresso proprio l'array intero e non il puntatore al primo elemento?