2011-08-27 10 views
5

मैं स्कोर जैसे सॉलिटेयर के लिए एक मूल्य को संशोधित करने का प्रयास कर रहा हूं।मूल्य को संशोधित करने के लिए बेस पता + ऑफसेट जोड़ना

वैसे भी मुझे पते (CheatEngine का उपयोग करके) पता चला है कि पॉइंटर्स इंगित करते हैं लेकिन मुझे स्कोर को संशोधित करने के लिए कोड को इंजेक्शन देने में मुश्किल हो रही है। मैं लगभग निश्चित हूं कि जिस तरह से मैं ऑफसेट को बेस वैल्यू में जोड़ रहा हूं, न कि विंडोज डीईपी, मेरी इंजेक्शन विधि, या कुछ और।

यहां कोड है जिसका मैं उपयोग कर रहा हूं।

#define BASE 0xFFAEAFA8 
#define fOFFSET 0x50 
#define sOFFSET 0x14 
#define VALUE 55555 


*(int*)(((*(int*) BASE) + fOFFSET) + sOFFSET) = VALUE; 

जब भी मैं इस कोड को इंजेक्ट करता हूं तो मेरा गेम क्रैश हो जाता है। ठीक है अगर मैं धोखा इंजन में मान संशोधित करता हूं लेकिन कोड में नहीं।

+0

बाइट्स या पूर्णांक (DWORDs) की इकाइयों में 'sOFFSET' है? –

+7

आप धोखा देने की कोशिश कर रहे हैं ... _Solitaire_ पर? – Nemo

+0

"क्रैश" के बारे में अधिक जानकारी प्राप्त करने के लिए प्रोग्राम को डीबगर में चलाएं। –

उत्तर

0

मैंने क्या गलत कर रहा था: मैं पता है कि एक सूचक अंक को खोजने के लिए ReadProcessMemory() एपीआई का उपयोग करने की जरूरत है। और फिर ऑफसेट जोड़ें।

0

कोशिश:

volatile int * pScore = (int*)(BASE + fOFFSET + sOFFSET); 
*pScore = VALUE; 
संबंधित मुद्दे

 संबंधित मुद्दे