विंडोज 7 के ऑन-स्क्रीन कीबोर्ड में विशिष्ट कॉन्फ़िगरेशन मानों को बदलना


9

मुझे टाइपिंग के लिए विंडोज 7 के ऑन-स्क्रीन कीबोर्ड का उपयोग करना होगा:

(यदि आपने अभी तक इसका उपयोग नहीं किया है, तो आप इसे प्राप्त कर सकते हैं: सभी कार्यक्रम -> सहायक उपकरण -> प्रवेश में आसानी -> ऑन-स्क्रीन कीबोर्ड

या बस "osk.exe" के लिए खोज करें)

स्क्रीन कीबोर्ड पर

यह बटन के बारे में "होवर" करने के लिए एक सुविधा प्रदान करता है। Microsoft इसे निम्नलिखित के रूप में वर्णित करता है:

होवरिंग मोड में, आप पूर्वनिर्धारित अवधि के लिए एक कुंजी को इंगित करने के लिए एक माउस या जॉयस्टिक का उपयोग करते हैं, और चयनित वर्ण स्वचालित रूप से टाइप किया जाता है।

मेरी विशिष्ट समस्या है। समय की पूर्वनिर्धारित अवधि मेरे लिए उपयोगी होने के लिए बहुत लंबी है। समय की न्यूनतम राशि 0.5 सेकंड (अधिकतम 3 सेकंड) है।

क्या इस मान को किसी चीज़ में बदलने का कोई तरीका है < 0.5? रजिस्ट्री के संपादन के माध्यम से उदाहरण के लिए?

संपादित करें: प्रविष्टि HKEY_CURRENT_USER\Software\Microsoft\Osk\HoverPeriodको 500 एमएस से कम सेट नहीं किया जा सकता है।

संपादित करें (2): मुझे लगता है कि मेरी समस्या को ठीक करने का एकमात्र तरीका है, .exe को विघटित करना है (मुझे लगता है कि यह C में लिखा है, या?) और न्यूनतम समय को बदल दें। फिर मुझे इसे फिर से संकलित करना होगा। क्या यह प्रक्रिया भी कारगर है? क्या चीजें विफल हो सकती हैं?

किसी भी उपयोगी टिप महान होगा!


1
Recompiling एक कठिन बात होने जा रही है, यह 1) ज्यादातर अपठनीय होगा (भले ही आप Microsoft के सिंबल का उपयोग करें) और 2) क्या आप नहीं जानते कि यह कहाँ है कि जाँच करें ताकि आप चारों ओर प्राप्त कर सकें यदि आपको एक चर 500 सौंपा गया लगता है या 0.5 लेकिन फिर भी आपको उस पथ को ट्रैक करना होगा जहां यह बहता है और 3) आपको अभी भी पूरी तरह से पुन: संकलित करना है जो अक्सर खराब अपघटन के कारण संभव नहीं है। अफसोस की बात है, डिबगिंग भी तब तक संभव नहीं है जब तक आपके पास डिबग केबल न हो और आपके कंप्यूटर को एक दूसरे से जोड़ दें ...
Tamara Wijsman

मुझे लगता है कि जैसा वह है उसे वैसा ही छोड़ देना बुद्धिमानी होगी। हर आधे सेकंड में एक पात्र उतना बुरा नहीं है, और अगर यह बहुत तेज़ हो जाता है तो गलतियाँ होने लगेंगी।
कटअरिज्म

चूँकि मैं इस पोस्ट पर अपनी टिप्पणी को आसानी से संपादित नहीं कर सकता हूँ, इससे कुछ लोगों को C # या अन्य भाषाओं को जानने में मदद मिल सकती है: इसके लिए daniweb.com/hardware-and-software/microsoft-windows/threads/…
cutbjm

@fnst: यदि आप वास्तव में गति में रुचि रखते हैं, तो डैशर पर विचार करें । मैं इसे अपने उत्तर में रेखांकित करूंगा ...
तमारा विज्समैन

@ केकज: जहां तक ​​मैं बता सकता हूं कि सिर्फ एप्लिकेशन एम्बेड करता है। क्या आप हमें बता सकते हैं कि यह कैसे मदद करेगा?
तमारा वाइज्समैन

जवाबों:


7

कोड में यह हमारी कुंजी कहां मिलती है?

प्रक्रिया मॉनिटर का उपयोग करना, ईटीएल ईवेंट के लिए खुदाई करना जो कि स्टैक ट्रेस का पता लगाता है, हमें देता है:

"Frame","Module","Location","Address","Path"
...
"3","ntdll.dll","NtQueryValueKey + 0xa","0x7fbce17344a","C:\Windows\SYSTEM32\ntdll.dll"
"4","KERNELBASE.dll","LocalBaseRegQueryValue + 0x15d","0x7fbcb1a3e1d","C:\Windows\system32\KERNELBASE.dll"
"5","KERNELBASE.dll","RegQueryValueExW + 0xe9","0x7fbcb1a3c19","C:\Windows\system32\KERNELBASE.dll"
"6","ADVAPI32.dll","RegQueryValueExWStub + 0x1e","0x7fbcba412fe","C:\Windows\system32\ADVAPI32.dll"
"7","osk.exe","OSKSettingsManager::GetOskSetting + 0xc7","0x7f72356057f","C:\Windows\System32\osk.exe"
"8","osk.exe","OSKSettingsManager::Initialize + 0x6e","0x7f72355ffe2","C:\Windows\System32\osk.exe"
"9","osk.exe","OSKSettingsManager::GetOSKSettingsManager + 0x64","0x7f72355fee4","C:\Windows\System32\osk.exe"
"10","osk.exe","COskNativeHWNDHost::DetermineOSKWindowSizeAndLimits + 0x5a","0x7f72355d4fa","C:\Windows\System32\osk.exe"
"11","osk.exe","COskNativeHWNDHost::Initialize + 0xaa","0x7f72355d28e","C:\Windows\System32\osk.exe"
"12","osk.exe","PresentOSK + 0x112","0x7f723557882","C:\Windows\System32\osk.exe"
"13","osk.exe","wWinMain + 0x356","0x7f723557f16","C:\Windows\System32\osk.exe"
"14","osk.exe","operator new[] + 0x37a","0x7f723564b12","C:\Windows\System32\osk.exe"
"15","KERNEL32.DLL","BaseThreadInitThunk + 0x1a","0x7fbcd24298e","C:\Windows\system32\KERNEL32.DLL"
"16","ntdll.dll","RtlUserThreadStart + 0x1d","0x7fbce19e229","C:\Windows\SYSTEM32\ntdll.dll"

हम देख सकते हैं कि OSKSettingsManager::GetOskSettingमूल्य पढ़ता है।

तो, वह हिस्सा कैसा दिखता है? क्या हम इसे डीबग कर सकते हैं?

WinDBG के साथ उस फ़ंक्शन को देखते हुए, यह उस रजिस्ट्री कुंजी को सही से पहले एक्सेस करता है 000007f7 23560517

osk!OSKSettingsManager::GetOskSetting:
...
000007f7`2356050e ff15440bfeff    call    qword ptr [osk!_imp_RegOpenKeyExW (000007f7`23541058)]
000007f7`23560514 448bd8          mov     r11d,eax
000007f7`23560517 85c0            test    eax,eax
000007f7`23560519 751f            jne     osk!OSKSettingsManager::GetOskSetting+0x82 (000007f7`2356053a)
000007f7`2356051b 488b0b          mov     rcx,qword ptr [rbx]
...

अब, यहां समस्या यह है कि जब मैं उस स्थान पर ब्रेकपॉइंट करने का प्रयास करता हूं तो मैं अब कुछ भी टाइप नहीं कर सकता क्योंकि osk.exeइनपुट ड्राइवरों में खुद को जोड़ता है। यह आसानी से Altअपने कीबोर्ड पर एक संशोधक कुंजी को पकड़कर देखा जा सकता है , यह इसमें रोशनी करता है osk.exe

परिवर्धन या घटाव के लिए कोड के माध्यम से देखने पर, मुझे केवल 40हेक्साडेसिमल के साथ कुछ होता है जो 64दशमलव है। तो यह भी संख्या से संबंधित कुछ भी नहीं है।

यह चार cmp(तुलना) निर्देशों में से एक में हो सकता है , लेकिन इसके लिए डिबगिंग जानकारी की आवश्यकता होगी। या यह एक उच्च अप फ़ंक्शन में पूरी तरह से हो सकता है, जिसे अधिक जांच की आवश्यकता होगी। लेकिन इनपुट क्षमताओं को खोए बिना इसे डिबग करने की क्षमता के बिना, यह एक बहुत ही मुश्किल काम है ...

लगता है कि सही स्थान खोजने के लिए डिबग केबल की आवश्यकता होगी क्योंकि जिस कंप्यूटर पर आप डिबग करते हैं वह अपनी इनपुट क्षमताओं को खो देता है, या डीबगिंग के ओवरहेड के कारण बहुत धीमा होता है। जैसा कि मेरे पास वर्तमान में 1943 पोर्ट के साथ लैपटॉप नहीं है, मैं इस डिबगिंग को स्वयं करने में असमर्थ हूं। यह ऐसा करने में सक्षम होगा, और हाँ, यह सचमुच आपके ओएस को फ्रीज कर देगा। एक आवेदन के बजाय एक ओएस डीबगिंग मजेदार है ... ^ ^

रुको, हमारे पास प्रतीकों तक पहुंच है! क्या हमें अपमानजनक कोड मिल सकता है?

OSKSettingsManager::ClearTransferKey(void)
OSKSettingsManager::GetOSKSettingsManager(OSKSettingsManager * *)
OSKSettingsManager::GetOskSetting(ulong,ulong *)
OSKSettingsManager::GetOskSetting(ulong,ulong *,int)
OSKSettingsManager::Initialize(void)
OSKSettingsManager::NotifyListeners(ulong,ulong)
OSKSettingsManager::RegisterListener(void (*)(ulong,ulong))
OSKSettingsManager::SQMStartupSettings(void)
OSKSettingsManager::SetOskSetting(ulong,ulong)
OSKSettingsManager::SetOskSetting(ulong,ulong,int)
OSKSettingsManager::_HandleUpdateAllListeners(void)
OSKSettingsManager::_KeepSettingValueInBounds(ulong,ulong *,int)
OSKSettingsManager::`scalar deleting destructor'(uint)

करीब से देखने पर, आप आक्रामक कार्य को नोटिस करेंगे:

OSKSettingsManager::_KeepSettingValueInBounds(ulong,ulong *,int)

यदि हम उस समारोह से गुजरते हैं तो हम पहली बार देखते हैं:

mov     edi, edi
push    ebp
mov     ebp, esp
mov     eax, [ebp+arg_4]
imul    eax, 14h
cmp     dword_4B7598[eax], 0
jz      short loc_41BC36        

ठीक है, यह कुछ तुलना करता है और फिर दूसरे स्थान पर कूदता है। वहां क्या है?

pop     ebp
retn    8

इसलिए, यदि यह शर्त तय हो जाती है कि इसे कूदना चाहिए तो यह केवल कार्य छोड़ देगा और कुछ भी नहीं बदलेगा।

तो, हम यह कैसे करते हैं कि यह हमेशा फ़ंक्शन को छोड़ दे?

jzनिर्देश को एक निर्देश में बदलें jmpजो हमेशा कूदता है, आप इसे सापेक्ष ऑफसेट पर पा सकते हैं 41BC10। यदि आपका कार्यक्रम अलग-अलग ऑफसेट की गणना करता है, तो आपको यह जानना होगा कि यह 401000एक आधार के रूप में उपयोग करता है इसलिए घटाना हमें पूर्ण ऑफसेट देता है 1AC10

कृपया ध्यान दें कि हेक्स संपादक में बदलना 74( JZ) काम नहीं करेगा E9( JMP)। आप एक हेक्स संपादक में ऐसा नहीं कर सकते हैं, आपको कुछ ऐसी चीज़ की आवश्यकता होगी जो कोड को डिसैम्बल करती है और रिजेक्ट करती है, लेकिन इसे ढूंढना आसान नहीं है। आमतौर पर पैच समुदाय में उपयोग किए जाने वाले ओलीबीडीजी, निष्पादन योग्य भी नहीं खोल सकते हैं।) और फिर भी, Microsoft छेड़छाड़ के खिलाफ अपने निष्पादन योग्य की रक्षा कर सकता है, क्योंकि इसे EULA के खिलाफ माना जा सकता है; इतनी अच्छी किस्मत!

मेह! यह कठिन है, मैं बस अपने माउस / आंखों / का उपयोग करके तेजी से टाइप करना चाहता हूं ...

आपको निश्चित रूप से डैशर की जांच करनी चाहिए जो ऑन-स्क्रीन कीबोर्ड की तुलना में तेज़ है। यह बस अपने माउस को अक्षरों की ओर ले जाकर काम करता है; क्षैतिज गति गति निर्धारित करती है और ऊर्ध्वाधर आंदोलन अक्षरों का चयन करते हैं। इसमें निर्मित एक शब्दकोश के साथ, बड़े होने की संभावना वाले अक्षरों को भी आकार दे सकता है, यह आपके आंदोलन से सीखने की भी कोशिश करता है जैसे कि गति और अक्षर वास्तव में आपके उपयोग के आदी हैं।

एक छवि एक हजार से अधिक शब्द बोलती है ...

बेशक यह छोटा है और वास्तव में तेज़ नहीं है क्योंकि यह एक उदाहरण है, लेकिन आप इसे अपनी स्क्रीन के दाईं ओर होने के लिए आकार बदल सकते हैं, ताकि यह आपकी स्क्रीन के साथ हस्तक्षेप न करे। यह आपको जितनी जल्दी हो सके टाइप करने की अनुमति देता है ...

यहाँ एक अच्छा उदाहरण है कि भविष्यवाणियाँ आपको किसी भी भाषा को और अधिक तेज़ी से टाइप करने की अनुमति कैसे देती हैं:

यह भी ध्यान दें कि दाईं ओर के अक्षरों को एक विशिष्ट क्रम में क्रमबद्ध किया गया है, जैसे कि प्रमुख दिशा (ऊपर, मध्य या नीचे) विभिन्न प्रकारों (लोअरकेस, अपरकेस, संख्या और विराम चिह्न) के बीच चयन करता है; और फिर इतनी बड़ी दिशा के भीतर, आपकी छोटी सी दिशा AZ, az, 0-9 और इसी तरह के बीच का चयन करेगी। मैंने अतीत में इसका उपयोग किया है और वास्तव में इस बात से चकित था कि अन्य प्रतियोगियों की तुलना में यह कितना धाराप्रवाह है ...

यह भी ध्यान दें कि डैशर में कुछ कॉन्फ़िगरेशन है, इसलिए आप कुछ ऐसा समायोजित करने में सक्षम हो सकते हैं जो आपको पसंद नहीं है।


@harrymc: यदि आपने पढ़ा है Using Process Monitor, digging into the for the ETL event reading out that value stack trace gives us:तो आपको पता होगा कि मैंने ETL इवेंट के लिए स्टैक ट्रेस की जाँच की है। मुझे लगता है कि आप यहां अपने खुद के जवाबों के बारे में बात कर रहे हैं? अधिक मात्रा में उत्तर देने के कारण, आपके उत्तरों में कुछ गुणवत्ता की कमी है। त्वरित और गंदे जवाब या मूर्खतापूर्ण टिप्पणियों को रखने के बजाय अपने उत्तरों को सुधारने और / या हटाने पर विचार करें जो प्रश्नोत्तर को सुधारने का इरादा नहीं रखते हैं; आप अनुमान लगा सकते हैं कि समुदाय के लिए कौन सा दृष्टिकोण सबसे अधिक मदद करने वाला है ...
तमारा विज्समैन

1
@harrymc: (1) यह कहाँ कहता है कि मैं क्रैक कर रहा हूँ ? मैं यहां केवल एक शुरुआती बिंदु दिखा रहा हूं, मैं विफल नहीं हुआ और मैंने दिखाया है कि अतिरिक्त उपकरण या होमवर्क आगे बढ़ने के लिए आवश्यक है। गुणवत्ता मेरे जवाब में है, मात्रा पाठक द्वारा की जानी है या जब मैं एक दूरस्थ डिबगिंग सेट-अप में आता हूं। (2) Googling Process Monitor और WinDBG कोई रॉकेट साइंस नहीं है। (३) तारीफ के लिए धन्यवाद, शायद मुझे समझाना चाहिए कि मेरे जवाब में विधानसभा कैसे काम करती है?
तमारा विजसमैन

@harrymc: मेरा उत्तर एक अच्छा प्रारंभिक बिंदु है। आपकी गलती पर्याप्त विवरण प्रदान करने में नहीं है, जैसा कि इस प्रश्न में आपके उत्तर और टिप्पणियों दोनों द्वारा दिखाया गया है। आपने अभी तक एक और टिप्पणी करना आवश्यक समझा है जो मेरे उत्तर को बेहतर बनाने का इरादा नहीं करता है या यह नहीं बताता है कि इसके साथ क्या गलत है, यह एक उत्तर देने के लिए आपको कुछ और समय लेने वाला है जो बहुत सामान्य होने के बजाय प्रयास दिखाता है । मैं यह नहीं देखता कि आपका उपयोग कैसे The decompilation help. Once located, you should patch the binary code.उपयोगी है, मैं बाल लंबे करने के बजाय अल्ट्रा-लॉन्ग और टेक-होम एक्सरसाइज करना पसंद करूंगा ...
तमारा विज्समैन

@harrymc: आप मान रहे हैं कि यह सामान्य उद्देश्य है; लेकिन, अगर आपने इसके संदर्भ और निर्भरता की जाँच की होगी, तो आपने देखा होगा कि यह अपने स्वयं के कॉन्फ़िगरेशन को अधिलेखित करने वाले किसी भी व्यवहार को नष्ट नहीं करता है, जो कि पूरी तरह से उस रजिस्ट्री कुंजी से लोड होता है। मैंने इसके संदर्भ और निर्भरता की जाँच की है, इसलिए मुझे इसके उपयोग की जानकारी है। क्या आप अपनी पिछली टिप्पणी भी हटाने जा रहे हैं? ;)
तमारा विजसमैन

यदि आपने इसे वास्तव में क्रैक किया है, तो आप पैच किए गए ओस्क बनाने से बस कुछ ही मिनट दूर हैं। नौकरी खत्म क्यों नहीं कर दी और पोस्टर को जज करने दिया?
18

2

मुझे डर है कि ज्यादातर डिकंपाइलर एक अच्छा पर्याप्त परिणाम नहीं देंगे जो फिर से तैयार किया जा सकता है।

अपघटन केवल उस क्षेत्र को इंगित करने में मदद कर सकता HKEY_CURRENT_USER\Software\Microsoft\Osk\HoverPeriodहै जिसका उपयोग किया जाता है, ताकि यह पता लगाया जा सके कि यह मूल्य कहां पढ़ा गया है और 500 एमएस की सीमा कहां लागू है।

एक बार स्थित होने के बाद, आपको बाइनरी कोड को पैच करना चाहिए ताकि परीक्षण को अक्षम किया जा सके और होवरपियर को छोटा होने के लिए लागू किया जा सके। बाइनरी को पैच करना, रीकॉम्पेलिंग की तुलना में बहुत अधिक संभव है।

यदि ऑस्क.को कभी विंडोज अपडेट द्वारा प्रतिस्थापित किया जाता है (जो मुझे वास्तव में होने की उम्मीद नहीं है) तो आपको प्रयास दोहराने की आवश्यकता हो सकती है।

[संपादित करें]

रास्ते में और अधिक मदद करने के लिए, उपयोगिताओं और उनके उपयोग पर कुछ शब्द यहां दिए गए हैं।

आप या तो सी-डिकंपाइलर या डिस्सेम्बलर का उपयोग कर सकते हैं। बाद का प्रकार अधिक उपयोगी हो सकता है, हालांकि इसके लिए इंटेल अनुदेश सेट के कुछ छोटे ज्ञान की आवश्यकता होती है। आपको एक अच्छे हेक्स संपादक की भी आवश्यकता होगी, और कुछ ऐसे भी हैं जो डिस्सेम्बलर क्षमताओं का विज्ञापन करते हैं (नीचे लिंक देखें)।

प्रोजेक्ट फेनरिस ने खुद को "कोड विश्लेषण, डिबगिंग, प्रोटोकॉल विश्लेषण, रिवर्स इंजीनियरिंग, फोरेंसिक, डायग्नोस्टिक्स, सुरक्षा ऑडिट, भेद्यता अनुसंधान और कई अन्य उद्देश्यों के लिए उपयुक्त उपकरणों के सूट" के रूप में विज्ञापित किया है। अच्छा लगता है और कई लोगों द्वारा सिफारिश की जाती है, लेकिन मुझे इसके साथ कोई अनुभव नहीं है।

आरईसी स्टूडियो डिकम्पॉइलर निष्पादन योग्य फ़ाइल बनाने के लिए उपयोग किए गए कोड और डेटा के सी-जैसे प्रतिनिधित्व का उत्पादन करने का प्रयास करता है।

बूमरैंग मशीन कोड कार्यक्रमों का एक सामान्य, खुला स्रोत, पुन: उपयोग करने योग्य विघटित करने वाला यंत्र है।

इस तरह के कई उपयोगिताओं को गोग्लिंग, या में पाया जा सकता है:

wikibooks x86 Disassembly / विश्लेषण उपकरण
wikibooks x86 Disassembly / Disassemblers और Decompilers
मुक्त निर्देशिका: Disassemblers

एक प्रारंभिक कदम osk को अलग करना है। परिणामी लिस्टिंग स्वैच्छिक हो सकती है और एक अच्छे टेक्स्ट-एडिटर की आवश्यकता होती है (सामान्य रूप से नोटपैड ++ पर्याप्त है)।

स्ट्रिंग "HoverPeriod" (केस असंवेदनशील) के लिए खोजें। यदि आप भाग्यशाली हैं, तो disassembler ने इसे एक स्ट्रिंग के रूप में पहचाना है और आप इसे इस प्रकार पा सकते हैं। यदि नहीं, तो आपको इसे बाइट-बाइट के लिए खोजना होगा। यूनिकोड स्ट्रिंग के रूप में यह ऐसा दिखेगा H,0,o,0,v,0...जहां अक्षरों को उनके संख्यात्मक कोड द्वारा प्रतिस्थापित किया जाना चाहिए।

एक बार जब आप "होवरपेरियोड" स्ट्रिंग पा लेते हैं, तो डिस्सेम्बलर को इससे पहले कहीं एक लेबल रखना चाहिए। इस जनरेट किए गए लेबल के नाम का उपयोग यह खोजने के लिए करें कि इसका उपयोग कहां किया गया है, यह पहचानने के लिए कि इसे रजिस्ट्री से कहां पुनर्प्राप्त किया गया है और वैश्विक चर किसमें संग्रहीत परिणाम है।

एक बार जब आप गणना करने वाले चर को स्थित कर लेते हैं, तो इसका उपयोग करने के लिए खोज करें। आप जो करेंगे, वह उस कोड के प्रारूप पर निर्भर करेगा जो आपको मिलेगा। फिर आप इच्छित पैच पर निर्णय ले सकते हैं।

उदाहरण के लिए, आप osk.exe को प्रतिस्थापित करने के लिए हेक्स संपादक का उपयोग करना चाह सकते हैं जैसे कि:

move AX,<HoverPeriod milliseconds count variable>

में

mov AX,200       (your count of 200 milliseconds)

अलग-अलग कमांड-लंबाई के साथ सावधान रहें, जहां यदि नया कमांड छोटा है, तो पुराने निर्देश की लंबाई तक एक-बाइट एनओपी निर्देशों (नो-ऑपरेशन) के साथ पैडेड-आउट होना होगा।

Osk.exe में पैच करने के लिए कमांड का पता लगाने के लिए खोज की आवश्यकता हो सकती है कि डिस्सेम्बलर जो ऑफसेट देता है वह एक्स फ़ाइल के बजाय कोड में है। यदि हेक्स एडिटर असेंबलर खोज का समर्थन नहीं करता है, तो मूल निर्देश बाइट्स को सूचीबद्ध करते समय डिस्सैसम करें, ताकि आपको पता चल जाएगा कि बाइनरी बाइट्स किसके लिए खोज करना है। उन निर्देशों को खोजने से बचें, जिनमें पते शामिल हैं, क्योंकि पते exe में स्थानांतरित किए जा सकते हैं, इसलिए इस तरह के एक निर्देश के पास बाइट्स के अनुक्रम की खोज करें।

यदि आप कोडांतरक का समर्थन करते हैं तो आप सीधे हेक्स संपादक में नए पैच बाइट्स बना सकते हैं। या अगर यह नहीं होता है और आप इंटेल मशीन कोड के साथ सहज महसूस नहीं करते हैं, तो अपने नए कोड को संकलित करने के लिए एक कोडांतरक ढूंढें और पैचिंग के लिए उपयोग करने के लिए संकलित बाइट्स प्राप्त करने के लिए इसकी लिस्टिंग का उपयोग करें।


मान बदलने से काम नहीं चलेगा कि यह एक अधिक सामान्य फ़ंक्शन द्वारा अधिलेखित है। रजिस्ट्री से मिलने वाले हर मूल्य को बदलने से एप्लिकेशन टूट जाएगा। इस सामान्य कार्य के लिए मेरा उत्तर देखें। एक हेक्स संपादक परिणाम के रूप में काम नहीं करेगा, इसलिए यह सही (डी) कोडांतरक (या [डी] संकलक) को खोजने के लिए नीचे आता है।
तमारा विज्समैन

1

क्या मुझे क्लिक को स्वचालित करने के लिए AutoIt का उपयोग करने का सुझाव देना चाहिए ?

जब माउस ऑन-स्क्रीन विंडो (जैसे कंट्रोल लूप में होता है, तो एक नियमित अंतराल पर जाँचता है कि क्या कर्सर ने स्थिति बदल दी है) और ऑटो-क्लिक (कॉल फंक्शन सेंडक्लिक) के बाद माउस आइड्लिंग की निगरानी करने का विचार होगा, तो 100ms निष्क्रियता।

बीट्स रिवर्स इंजीनियरिंग -exe।


"मैं इसे तेजी से क्लिक करने की आवश्यकता है" इसे "मैं इसे स्मार्ट तरीके से तेज क्लिक करने देता हूं" के लिए +1।
तमारा वाइज्समैन

0

शायद तुम सब कुछ recompile नहीं है। खेल-दुनिया में प्रशिक्षकों का उपयोग करना आम है, जो कि प्रोग्राम चलने पर मेमोरी में एक मूल्य में हेरफेर करता है। यदि आप मेमोरी में न्यूनतम मान (0.5) पाते हैं और उस नंबर को छोटा करने के लिए लोडर की तरह कुछ प्रोग्राम करते हैं, तो यह काम कर सकता है।


यह तभी काम कर सकता है, जब मान उसी स्थान पर हो या Xth मान जिसमें वह मान हो। किसी भी मामले में, टी सर्च और क्विक मेमोरी एडिटर इसके साथ प्रयास करने के लिए दो अच्छे उपकरण हैं। आप 500इसके बजाय खोज करना चाहते हैं कि यह कैसे इसे लोड करता है, फ्लोट के रूप में नहीं।
तमारा विज्समैन

पहले प्रयास करने पर, ऐसा प्रतीत होता है कि osk.exeप्रक्रिया सूची में नहीं है। ऐसा इसलिए है क्योंकि इसे winlogonइस तरह से संदर्भ में लॉन्च किया गया है कि यह उपयोगकर्ताओं के बीच काम करता है, आप इसके साथ ही मेमोरी एडिटर को भी लॉन्च कर सकते हैं winlogon
तमारा विज्समैन

यह करने के लिए एक दृष्टिकोण के लिए stackoverflow.com/questions/9868079/… और stackoverflow.com/a/3143055/47064 देखें , आसान दृष्टिकोण को बदलना है, osk.exeलेकिन यह केवल तभी काम करेगा जब आप एक लॉन्चर बनाएं जो मेमोरी एडिटर और लॉन्चर दोनों को लॉन्च करे वापस आ गया osk.exe। लेकिन फिर आपको यह विचार करना होगा कि एक लोडर को भी ऐसा करने की आवश्यकता होगी। लगता है कि यह समाधान osk.exe
असंतुष्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.