Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Utilisation de deux flag avec openProcess

6 réponses
Avatar
geek-59600
Bonjour =E0 tous, je d=E9veloppe 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=E9s 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=E9rieur .

La MSDN pr=E9conise donc d'utiliser uniquement les flag n=E9cessaire pour
s'assurer de la r=E9tro compatibilit=E9

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 =E0 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=E9e !

6 réponses

Avatar
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 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)
Avatar
geek-59600
On 22 mai, 16:17, marc wrote:
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
Avatar
geek-59600
On 23 mai, 12:55, wrote:
On 22 mai, 16:17, marc wrote:



> 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 :)
Avatar
geek-59600
On 23 mai, 19:36, wrote:
On 23 mai, 12:55, wrote:



> On 22 mai, 16:17, marc wrote:

> > 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
Avatar
Christian ASTOR
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...
Avatar
gta126
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