wsprintf, c'est pas pour du UNICODE ça ?
De plus, peut-être est-ce voulu mais, tu commence ton tableau à 1. Normalement c'est à 0 donc: for(i=0;i<51;++i)
char *lang[50] <- c'est un tableau de pointeurs.
Si tu fais sizeof(lang[i]), tu obtiendra à tout les coups 4, car c'est la taille d'un pointeur.
Moi, à ta place, je choisirais d'ignorer l'avertissement. Si tout est bien codé, il n'y a aucune raison d'utiliser strcpy_s (en plus, c'est plus lourd qu'un strcpy).
Il existe un emplacement dans les propriétés de ton projet pour désactiver les avertissements. Suffis d'entrer le numéro de l'avertissement pour qu'il n'apparaise plus. Je ne peux pas te dire exactement où car je suis sous Linux actuellement mais je crois que c'est dans l'onglet compilateur.
C++ (@++)