2011-04-29 3 views

Répondre

1

Les paramètres régionaux sont stockés dans le TEB, donc vous devez être en mesure d'ouvrir le processus avec les droits de PROCESS_VM_READ et le fil avec THREAD_QUERY_INFORMATION puis appelez OpenThread() + NtQueryInformationThread (ThreadBasicInformation), puis obtenir l'adresse de TEB en THREAD_BASIC_INFORMATION et lisez-le avec ReadProcessMemory().

Tout cela est non documentée et pourrait changer à tout moment, vous devez également gérer WOW64 etc ...

+0

Et bien sûr, à moins que le thread ne soit suspendu, les paramètres régionaux pourraient changer juste après que vous avez appelé ReadProcessMemory! – Anders

+0

Super info, merci! – huseyint

0

Il n'y a pas d'appel d'API pour cela. En supposant que vous ne puissiez pas modifier l'application cible pour fournir les informations à la demande, la seule solution que je puisse voir est un hook global. Cela vous permet d'injecter votre code dans le thread en question.

+0

Eh oui, je n'ai aucune chance de modifier l'application cible. – huseyint

Questions connexes