Utilisation de deux flag avec openProcess

Le
geek-59600
Bonjour à tous, je développe un trainer pour H.A.W.X sous windows7
celui ci et fonctionnel mais j'ouvrais le processus avec le flag
PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a changer
depuis vista donc si je code sous vista/seven mon trainer ne sera pas
utilisable sous XP et inférieur .

La MSDN préconise donc d'utiliser uniquement les flag nécessaire pour
s'assurer de la rétro compatibilité

Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas,
j'ai voulu utiliser le flag 0x1e qui correspond à l'addition des deux
DWORD correspondant aux flag read et write ca ne fonctionne pas non
plus.

Auriez vous une solution ? Le fait de compiler sous xp mon trainer
fonctionnera t il sous vista et seven ?

Merci d'avance

Bonne journée !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
marc
Le #19389131
a écrit :
Bonjour à tous, je développe un trainer pour H.A.W.X sous windows7
celui ci et fonctionnel mais j'ouvrais le processus avec le flag
PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a changer
depuis vista donc si je code sous vista/seven mon trainer ne sera pas
utilisable sous XP et inférieur .
La MSDN préconise donc d'utiliser uniquement les flag nécessaire pour
s'assurer de la rétro compatibilité
Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas,
j'ai voulu utiliser le flag 0x1e qui correspond à l'addition des deux
DWORD correspondant aux flag read et write ca ne fonctionne pas non
plus.

Auriez vous une solution ? Le fait de compiler sous xp mon trainer
fonctionnera t il sous vista et seven ?



Comme cité dans MSDN, tu peux aussi préciser l'OS cible (#define
_WIN32_WINNT... )
pour que ça ne pose pas de problèmes si l'OS est > XP
Il faut aussi normalement ajuster les privileges
(AdjustTokenPrivileges)
Et pour "ne fonctionne pas", il faut citer l'erreur retournée pour
avoir plus de précision (GetLastError)
geek-59600
Le #19394341
On 22 mai, 16:17, marc
a écrit :

> Bonjour à tous, je développe un trainer pour H.A.W.X sous windows7
> celui ci et fonctionnel mais j'ouvrais le processus avec le flag
> PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a changer
> depuis vista donc si je code sous vista/seven mon trainer ne sera pas
> utilisable sous XP et inférieur .
> La MSDN préconise donc d'utiliser uniquement les flag nécessaire po ur
> s'assurer de la rétro compatibilité
> Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
> ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas,
> j'ai voulu utiliser le flag 0x1e  qui correspond à l'addition des d eux
> DWORD correspondant aux flag read et write ca ne fonctionne pas non
> plus.

> Auriez vous une solution ? Le fait de compiler sous xp mon trainer
> fonctionnera t il sous vista et seven ?

Comme cité dans MSDN, tu peux aussi préciser l'OS cible (#define
_WIN32_WINNT... )
pour que ça ne pose pas de problèmes si l'OS est > XP
Il faut aussi normalement ajuster les privileges
(AdjustTokenPrivileges)
Et pour "ne fonctionne pas", il faut citer l'erreur retournée pour
avoir plus de précision (GetLastError)



L'idéal serait d'avoir un exécutable multi plateforme
Je vais retenté, et voir ce que me sors le GetLastError et faire une
recherche pour AdjustTokenPrivileges

Merci beaucoup
geek-59600
Le #19396351
On 23 mai, 12:55, wrote:
On 22 mai, 16:17, marc


> a écrit :

> > Bonjour à tous, je développe un trainer pour H.A.W.X sous windows 7
> > celui ci et fonctionnel mais j'ouvrais le processus avec le flag
> > PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a changer
> > depuis vista donc si je code sous vista/seven mon trainer ne sera pas
> > utilisable sous XP et inférieur .
> > La MSDN préconise donc d'utiliser uniquement les flag nécessaire pour
> > s'assurer de la rétro compatibilité
> > Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
> > ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas,
> > j'ai voulu utiliser le flag 0x1e  qui correspond à l'addition des deux
> > DWORD correspondant aux flag read et write ca ne fonctionne pas non
> > plus.

> > Auriez vous une solution ? Le fait de compiler sous xp mon trainer
> > fonctionnera t il sous vista et seven ?

> Comme cité dans MSDN, tu peux aussi préciser l'OS cible (#define
> _WIN32_WINNT... )
> pour que ça ne pose pas de problèmes si l'OS est > XP
> Il faut aussi normalement ajuster les privileges
> (AdjustTokenPrivileges)
> Et pour "ne fonctionne pas", il faut citer l'erreur retournée pour
> avoir plus de précision (GetLastError)

L'idéal serait d'avoir un exécutable multi plateforme
Je vais retenté, et voir ce que me sors le GetLastError et faire une
recherche pour AdjustTokenPrivileges

Merci beaucoup



Get last error me sors erreur 5 soit acces refusé la piste
AdjustTokenPrivileges va dans ce sens si j'ai bien compris ?

Bon bah reste plus qu'a potasser ca :)
geek-59600
Le #19403701
On 23 mai, 19:36, wrote:
On 23 mai, 12:55, wrote:



> On 22 mai, 16:17, marc
> > a écrit :

> > > Bonjour à tous, je développe un trainer pour H.A.W.X sous windo ws7
> > > celui ci et fonctionnel mais j'ouvrais le processus avec le flag
> > > PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a chang er
> > > depuis vista donc si je code sous vista/seven mon trainer ne sera p as
> > > utilisable sous XP et inférieur .
> > > La MSDN préconise donc d'utiliser uniquement les flag nécessair e pour
> > > s'assurer de la rétro compatibilité
> > > Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
> > > ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas ,
> > > j'ai voulu utiliser le flag 0x1e  qui correspond à l'addition d es deux
> > > DWORD correspondant aux flag read et write ca ne fonctionne pas non
> > > plus.

> > > Auriez vous une solution ? Le fait de compiler sous xp mon trainer
> > > fonctionnera t il sous vista et seven ?

> > Comme cité dans MSDN, tu peux aussi préciser l'OS cible (#define
> > _WIN32_WINNT... )
> > pour que ça ne pose pas de problèmes si l'OS est > XP
> > Il faut aussi normalement ajuster les privileges
> > (AdjustTokenPrivileges)
> > Et pour "ne fonctionne pas", il faut citer l'erreur retournée pour
> > avoir plus de précision (GetLastError)

> L'idéal serait d'avoir un exécutable multi plateforme
> Je vais retenté, et voir ce que me sors le GetLastError et faire une
> recherche pour AdjustTokenPrivileges

> Merci beaucoup

Get last error me sors erreur 5 soit acces refusé la piste
AdjustTokenPrivileges va dans ce sens si j'ai bien compris ?

Bon bah reste plus qu'a potasser ca :)



J'ai cherché pas mal de temps mais je comprends pas a quoi ca sert ni
comment utiliser les tokens j'ai utiliser Openprocesstoken mais aprés
je séche.

Pourriez vous m'éclairer
Christian ASTOR
Le #19404321
wrote:

J'ai cherché pas mal de temps mais je comprends pas a quoi ca sert ni
comment utiliser les tokens j'ai utiliser Openprocesstoken mais aprés
je séche.

Pourriez vous m'éclairer



Voir par ex la fonction EnableDebugPriv() dans le Windows SDK (exemple
SuperUsr.c)
Mais c'est surtout utilisé sous XP pour pouvoir faire un OpenProcess()
sur certains processes...
gta126
Le #20270251
geek-59600 a écrit le 22/05/2009 à 15h25 :
Bonjour à tous, je développe un trainer pour H.A.W.X sous windows7
celui ci et fonctionnel mais j'ouvrais le processus avec le flag
PROCESS_ALL_ACCES or d'aprés la msdn la taille de ce flag a changer
depuis vista donc si je code sous vista/seven mon trainer ne sera pas
utilisable sous XP et inférieur .

La MSDN préconise donc d'utiliser uniquement les flag nécessaire pour
s'assurer de la rétro compatibilité

Quand j'utilise le flag PROCESS_VM_READ+PROCESS_VM_WRITE mon
ProcessReadMemory fonctionne mais mon WriteMemory ne fonctionne pas,
j'ai voulu utiliser le flag 0x1e qui correspond à l'addition des deux
DWORD correspondant aux flag read et write ca ne fonctionne pas non
plus.

Auriez vous une solution ? Le fait de compiler sous xp mon trainer
fonctionnera t il sous vista et seven ?

Merci d'avance

Bonne journée !


Réponse fort en retard mais essaye de mettre Or à la place du + entre PROCESS_VM_READ+PROCESS_VM_WRITE donc au lieu d'avoir
PROCESS_VM_READ+PROCESS_VM_WRITE tu devra avoir
PROCESS_VM_READ Or PROCESS_VM_WRITE et la ça devrait aller

Voilà bonne programmation
Publicité
Poster une réponse
Anonyme