উইন্ডোজ 7 এর অন-স্ক্রিন কীবোর্ডে নির্দিষ্ট কনফিগারেশন মানগুলিতে পরিবর্তন


9

টাইপ করার জন্য আমাকে উইন্ডোজ 7 এর অন-স্ক্রীন কীবোর্ডটি ব্যবহার করতে হবে:

(আপনি যদি এখনও এটি ব্যবহার না করেন তবে আপনি এটির মাধ্যমে পেতে পারেন: সমস্ত প্রোগ্রাম -> আনুষাঙ্গিক -> অ্যাক্সেসের সহজতা -> অন-স্ক্রীন কীবোর্ড

অথবা কেবল "osk.exe" অনুসন্ধান করুন)

অন ​​স্ক্রিন কিবোর্ড

এটি বোতামগুলি সম্পর্কে "হোভার" করার জন্য একটি বৈশিষ্ট্য সরবরাহ করে। মাইক্রোসফ্ট এটি নিম্নলিখিত হিসাবে বর্ণনা করে:

হাওয়ারিং মোডে, আপনি পূর্বনির্ধারিত সময়ের জন্য একটি কীতে নির্দেশ করতে একটি মাউস বা জয়স্টিক ব্যবহার করেন এবং নির্বাচিত অক্ষরটি স্বয়ংক্রিয়ভাবে টাইপ হয়।

আমার নির্দিষ্ট সমস্যা আছে। সময় পূর্বনির্ধারিত সময়ের অত্যন্ত দীর্ঘ আমার জন্য উপযোগী হতে হয়। সময়ের সর্বনিম্ন পরিমাণ 0.5 সেকেন্ড (সর্বোচ্চ 3 সেকেন্ড)।

এই মানটিকে < 0.5। এ পরিবর্তন করার কোনও উপায় আছে কি ? রেজিস্ট্রি সম্পাদনার মাধ্যমে উদাহরণস্বরূপ?

সম্পাদনা করুন: এন্ট্রি HKEY_CURRENT_USER\Software\Microsoft\Osk\HoverPeriod500 এমএসের চেয়ে কম সেট করা যাবে না।

সম্পাদনা (২): আমি মনে করি যে আমার সমস্যা সমাধানের একমাত্র উপায় হ'ল .exe (C বা এটি সিতে লেখা আছে?) ন্যূনতম সময় পরিবর্তন করা dec তারপরে আমাকে আবার সংকলন করতে হবে। এই পদ্ধতিটি কি কার্যকর? কোন জিনিস ব্যর্থ হতে পারে?

কোনও সহায়ক টিপ দুর্দান্ত হবে!


1
রিকম্পাইলিং একটি কঠিন জিনিস হতে চলেছে, এটি হবে ১) বেশিরভাগই অপঠনযোগ্য (এমনকি আপনি মাইক্রোসফ্টের সিম্বলগুলি ব্যবহার করেন) এবং ২) আপনি জানেন না যে এটি কোথায় তা পরীক্ষা করে যাতে আপনি যদি 500 এর সাথে নির্ধারিত কোনও ভেরিয়েবল খুঁজে পান তবে আপনি আশেপাশে যেতে পারেন বা ০.০ তবে তারপরেও আপনাকে যেদিকে প্রবাহিত হবে সেই পথটি ট্র্যাক করতে হবে এবং ৩) আপনাকে এখনও পুরো জিনিসটি পুনরায় সংশ্লেষ করতে হবে যা প্রায়শই খারাপ পচনের কারণে সম্ভব হয় না। দুঃখের বিষয়, আপনার ডিবাগ কেবল না থাকলে এবং কম্পিউটারটিকে অন্য একটিতে সংযুক্ত না করা হলে
ডিবাগিংও

আমি মনে করি এটি যেমন হয় ঠিক তেমন ছেড়ে দেওয়া বুদ্ধিমানের কাজ হবে। প্রতি অর্ধেক সেকেন্ডে একটি চরিত্রটি খারাপ নয়, এবং এটি খুব দ্রুত পেলে ভুলগুলি ঘটতে শুরু করবে।
কাটরেটজম

যেহেতু আমি এই পোস্টে আমার মন্তব্যটি সুবিধামত সম্পাদনা করতে পারছি না, এটি সি # বা অন্যান্য ভাষাগুলি জানেন এমন কিছু লোককে এর জন্য একটি প্যাচ লিখতে সহায়তা করতে পারে: daniweb.com/hardware-and-software/microsoft-windows/threads/…
কাটরাইটজম

@fnst: আপনি সত্যিই গতিতে আগ্রহী, বিবেচনা ড্যাশার । আমি আমার উত্তরে এটির রূপরেখা দেব ...
তামার উইজসম্যান

@ একাজ: যতদূর আমি বলতে পারি এটি কেবল অ্যাপ্লিকেশনটিকে এম্বেড করে। আপনি কি বলতে পারেন যে এটি কীভাবে সাহায্য করবে?
তমারা উইজসম্যান

উত্তর:


7

কোডটিতে এটি আমাদের কীটি খুঁজে পায়?

প্রসেস মনিটর ব্যবহার করে, ETL ইভেন্টের জন্য খনন করে মান স্ট্যাক ট্রেসটি আমাদের দেয়:

"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মানটি পড়ে reads

তো, সেই অংশটি কেমন দেখাচ্ছে? আমরা কি এটি ডিবাগ করতে পারি?

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        

ঠিক আছে, এটি কিছু তুলনা করে এবং পরে অন্য স্থানে লাফ দেয় to সেখানে কি?

pop     ebp
retn    8

সুতরাং, যদি শর্তটি স্থির করে যে এটি অবশ্যই লাফিয়ে উঠবে এটি কেবল ফাংশনটি ছেড়ে যাবে এবং কোনও কিছু পরিবর্তন করবে না।

সুতরাং, আমরা কীভাবে এটি সর্বদা ফাংশনটি ছেড়ে দেব?

jzনির্দেশকে এমন নির্দেশে পরিবর্তন করুন jmpযা সর্বদা ঝাঁপ দেয়, আপনি এটি অফসেটে খুঁজে পেতে পারেন 41BC10। যদি আপনার প্রোগ্রাম অফসেটগুলি পৃথক করে গণনা করে তবে আপনাকে জানতে হবে যে এটি 401000একটি ভিত্তি হিসাবে ব্যবহার করে তাই বিয়োগ আমাদের পরম অফসেট দেয় 1AC10

দয়া করে মনে রাখবেন পরিবর্তন 74( JZ) এর হেক্স এডিটরে E9( JMP) না হবে। আপনি এটি কোনও হেক্স সম্পাদকে করতে পারবেন না, আপনার এমন কিছু প্রয়োজন হবে যা কোডকে বিচ্ছিন্ন ও পুনর্ব্যবহৃত করতে পারে তবে এটি সন্ধান করা অগত্যা সহজ নয় (উদাহরণস্বরূপ, আইডিএ পেশাদার যা লোকেরা আসলে প্রদান করে, উপযুক্ত সি কোড বা এক্সিকিউটেবল উত্পাদন করতে পারে না। ওলিডিবিজি, সাধারণত প্যাচ সম্প্রদায়ের মধ্যে ব্যবহৃত হয়, এমনকি সম্পাদনযোগ্যকেও খুলতে পারে না))। এবং তারপরেও, মাইক্রোসফ্ট তার নির্বাহযোগ্যকে টেম্পারিংয়ের বিরুদ্ধে রক্ষা করতে পারে, কারণ এটি EULA এর বিরুদ্ধে বিবেচনা করা যেতে পারে; সুতরাং ভালো থাকুন!

সাধরণ! এটি শক্ত, আমি কেবল আমার মাউস / চোখ / ... ব্যবহার করে দ্রুত টাইপ করতে চাই

আপনার অবশ্যই ড্যাশারটি চেক আউট করা উচিত যা কোনও অন-স্ক্রীন কীবোর্ডের চেয়ে দ্রুত গতিযুক্ত । এটি কেবল আপনার মাউসকে অক্ষরের দিকে নিয়ে যাওয়ার মাধ্যমে কাজ করে; অনুভূমিক চলন গতি নির্ধারণ করে এবং উল্লম্ব আন্দোলন অক্ষর নির্বাচন করে select এতে নির্মিত একটি অভিধানের সাহায্যে এমনকি বড় অক্ষরগুলির আকারও বড় হতে পারে, এটি আপনার গতিবিধি থেকেও শিখতে চেষ্টা করে যে গতি এবং অক্ষরগুলি সত্যই আপনার ব্যবহারের সাথে অভ্যস্ত।

একটি চিত্র হাজার হাজার শব্দের চেয়ে বেশি কথা বলে ...

অবশ্যই এটি বরং ছোট এবং এটির উদাহরণস্বরূপ দ্রুত নয় তবে এটি আপনার পর্দার ডানদিকে থাকতে এটি আকার পরিবর্তন করতে পারে যাতে এটি আপনার পর্দার সাথে হস্তক্ষেপ না করে। এটি আপনাকে যত দ্রুত সম্ভব টাইপ করতে দেয় ...

ভবিষ্যদ্বাণীগুলি কীভাবে আপনাকে যে কোনও ভাষা আরও দ্রুত টাইপ করতে দেয় তার একটি উত্তম উদাহরণ এখানে:

এছাড়াও নোট করুন যে ডানদিকের বর্ণগুলি একটি নির্দিষ্ট ক্রমে বাছাই করা হয়েছে, যেমন প্রধান দিক (উপরে, মধ্য বা নীচে) বিভিন্ন ধরণের (ছোট হাতের অক্ষর, বড় হাতের সংখ্যা, এবং বিরামচিহ্ন) এর মধ্যে চয়ন করে; এবং তারপরে এই জাতীয় প্রধান দিকের মধ্যে আপনার গৌণ দিকটি এজেড, এজেড, 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) এটি কোথায় বলে যে আমি ক্র্যাক করছি ? আমি এখানে একটি সূচনা পয়েন্টটি দেখছি, আমি ব্যর্থ হইনি এবং আমি দেখিয়েছি যে এগিয়ে যাওয়ার জন্য অতিরিক্ত সরঞ্জাম বা হোমওয়ার্ক প্রয়োজনীয়। গুণটি আমার উত্তরে রয়েছে, পরিমাণটি পাঠককে করতে হবে বা যখন আমি রিমোট ডিবাগিং সেট-আপ পেরিয়ে আসি। (২) গুগলিং প্রক্রিয়া মনিটর এবং উইনডিবিজি কোনও রকেট বিজ্ঞান নয়। (3) প্রশংসা করার জন্য ধন্যবাদ, সম্ভবত আমার ব্যাখ্যা করা উচিত কীভাবে আমার উত্তরটিতে সমাবেশ কাজ করে?
তমারা উইজসম্যান

@harrymc: আমার উত্তরটি একটি ভাল সূচনা পয়েন্ট। আপনার ভুলটি যথেষ্ট বিবরণ না দেওয়ার মধ্যে রয়েছে, যেমন এই প্রশ্নের আপনার উত্তর এবং মন্তব্য উভয়ই দেখায়। আপনি কেবলমাত্র আরও একটি মন্তব্য দেওয়ার দরকার খুঁজে পেয়েছেন যা আমার উত্তরটির উন্নতি করতে চায় না বা এর মধ্যে কী ভুল তা জানায় না, খুব জেনারিক হওয়ার পরিবর্তে প্রচেষ্টা দেখায় এমন একটি উত্তর দিতে আপনাকে আরও কিছুটা সময় লাগবে । আপনার কীভাবে দরকারী তা আমি দেখতে পাচ্ছি না , আমি চুল-স্ক্র্যাচিংয়ের পরিবর্তে অতি-দীর্ঘ এবং গৃহ-গৃহের অনুশীলনকে পছন্দ করব ...The decompilation help. Once located, you should patch the binary code.
তামারা উইজসম্যান

@harrymc: আপনি ধরে নিচ্ছেন যে এটি সাধারণ উদ্দেশ্য; তবে, যদি আপনি এর উল্লেখগুলি এবং নির্ভরতাগুলি পরীক্ষা করে দেখেন তবে আপনি দেখতে পেতেন যে এটি নিজস্ব কনফিগারেশন ওভাররাইট করার আগে কোনও আচরণকে ধ্বংস করে না, যা কেবলমাত্র সেই রেজিস্ট্রি কী থেকে লোড করা হয়। আমি এর রেফারেন্স এবং নির্ভরতা পরীক্ষা করেছি, তাই আমি এর ব্যবহারগুলি জানি। আপনি কি আপনার শেষ মন্তব্যটি মুছতে চলেছেন? ;)
তমারা উইজসম্যান

যদি আপনি সত্যিই এটির ফাটল ধরে থাকেন তবে আপনি প্যাচযুক্ত অস্ক তৈরি থেকে কয়েক মিনিট দূরে রয়েছেন। কেন কাজ শেষ করে পোস্টার বিচারককে দেওয়া হচ্ছে না?
harrymc

2

আমি আশঙ্কা করছি যে বেশিরভাগ ডিসকম্পিলারগুলি যথেষ্ট পরিমাণে পুনরায় সংমিশ্রিত হতে পারে এমন ফল দেয় না।

সংক্ষেপণটি কেবলমাত্র HKEY_CURRENT_USER\Software\Microsoft\Osk\HoverPeriodব্যবহৃত অঞ্চলটি নির্দিষ্ট করতে সহায়তা করতে পারে , যাতে এই মানটি কোথায় পড়ছে এবং যেখানে 500 এমএস সীমা প্রয়োগ করা হয়েছে তা সন্ধান করতে পারেন।

একবার সনাক্ত হয়ে গেলে, আপনার বাইনারি কোডটি প্যাচ করা উচিত যাতে পরীক্ষাটি অক্ষম করতে হবে এবং হোভারপিডিয়োডকে আরও ছোট করা হবে। বাইনারি প্যাচ করা পুনরায় সংশোধনের চেয়ে অনেক বেশি সম্ভাব্য।

আপনার যদি চেষ্টা করা যায় যে যদি ওসক.ইক্সিকে উইন্ডোজ আপডেট দ্বারা প্রতিস্থাপন করা হয় (যা আমি সত্যিই ঘটতে প্রত্যাশা করি না) তবে আপনাকে পুনরায় চেষ্টা করতে হবে।

[Edit]

পথে আপনাকে আরও সহায়তা করতে, এখানে ইউটিলিটি এবং তাদের ব্যবহার সম্পর্কে কিছু শব্দ রয়েছে।

আপনি হয় সি-ডিকম্পিলার বা একটি বিচ্ছিন্নকারী ব্যবহার করতে পারেন। পরবর্তী ধরণেরটি আরও কার্যকর হতে পারে, যদিও এটির জন্য ইন্টেল নির্দেশিকা সেট সম্পর্কে কিছুটা ছোট জ্ঞান প্রয়োজন। আপনার একটি ভাল হেক্স সম্পাদকও প্রয়োজন হবে এবং কিছু এমন রয়েছে যা ডিসেসেম্বলারের সক্ষমতা প্রকাশ করে (নীচের লিঙ্কটি দেখুন)।

প্রকল্প ফেনারিস নিজেকে "কোড বিশ্লেষণ, ডিবাগিং, প্রোটোকল বিশ্লেষণ, বিপরীত প্রকৌশল, ফরেনসিক, ডায়াগনস্টিকস, সুরক্ষা নিরীক্ষা, দুর্বলতা গবেষণা এবং অন্যান্য অনেকগুলি উদ্দেশ্যে উপযুক্ত সরঞ্জামগুলির স্যুট হিসাবে বিজ্ঞাপন দেয়। অনেকের কাছে ভাল এবং সুপারিশকৃত মনে হচ্ছে তবে এর সাথে আমার কোনও অভিজ্ঞতা নেই।

আরইসি স্টুডিও ডিকম্পিলার এক্সিকিউটেবল ফাইল তৈরিতে ব্যবহৃত কোড এবং ডেটার সি-এর মতো উপস্থাপনা তৈরি করার চেষ্টা করে।

বুমেরাং হল একটি সাধারণ, ওপেন সোর্স, মেশিন কোড প্রোগ্রামগুলির retargetable ডিকম্পিলার।

গুগলিংয়ের মাধ্যমে বা এর মধ্যে আরও অনেকগুলি ইউটিলিটি পাওয়া যেতে পারে:

উইকিবই এক্স 86 disassembly / বিশ্লেষণ সরঞ্জাম
উইকিবই disassembly x86 / Disassemblers এবং Decompilers
যেই Open Directory: Disassemblers

একটি প্রাথমিক পদক্ষেপ হল অস্ককে বিচ্ছিন্ন করা। ফলাফলের তালিকাটি প্রচুর পরিমাণে হতে পারে এবং একটি ভাল পাঠ্য-সম্পাদক প্রয়োজন (সাধারণত নোটপ্যাড ++ যথেষ্ট)।

স্ট্রিং "হোভারপিরওড" অনুসন্ধান করুন (কেস সংবেদনশীল)) আপনি যদি ভাগ্যবান হন তবে বিচ্ছিন্নকারী এটি একটি স্ট্রিং হিসাবে চিহ্নিত করেছে এবং আপনি এটি যেমনটি পেয়েছেন তেমন খুঁজে পেতে পারেন। যদি তা না হয় তবে আপনাকে বাই বাই বাই অনুসন্ধান করতে হবে। একটি ইউনিকোড স্ট্রিং হিসাবে এটি বর্ণনাগুলি H,0,o,0,v,0...যেখানে তাদের সংখ্যাসূচক কোড দ্বারা প্রতিস্থাপন করা উচিত তা দেখতে হবে।

একবার আপনি "হোভারপিরওড" স্ট্রিংটি খুঁজে পেয়েছেন, বিচ্ছিন্নকারীটির আগে এটির আগে কোনও লেবেল রাখা উচিত ছিল। এটি কোথায় ব্যবহার করা হয়েছে তা অনুসন্ধান করার জন্য এই উত্পন্ন লেবেলের নামটি ব্যবহার করুন, এটি রেজিস্ট্রি থেকে কোথায় পাওয়া গেছে এবং কোন বৈশ্বিক পরিবর্তনশীল ফলাফল সঞ্চিত রয়েছে তা সনাক্ত করতে।

আপনি গণনাটি ধারণ করে এমন ভেরিয়েবলটি সন্ধান করার পরে এটি কোথায় ব্যবহৃত হবে তা অনুসন্ধান করুন। আপনি যা করবেন তা কোডের যে ফর্ম্যাটটি পাবেন তা নির্ভর করে। তারপরে আপনি যে প্যাচ চান তা সিদ্ধান্ত নিতে পারেন।

উদাহরণস্বরূপ, আপনি হেক্স সম্পাদকটি osk.exe এ প্রতিস্থাপন করতে ব্যবহার করতে পারেন যেমন একটি কমান্ড:

move AX,<HoverPeriod milliseconds count variable>

মধ্যে

mov AX,200       (your count of 200 milliseconds)

পৃথক কমান্ড-দৈর্ঘ্যের সাথে সতর্ক হন, যেখানে নতুন কমান্ডটি ছোট হলে এটি পুরানো নির্দেশিকার দৈর্ঘ্য পর্যন্ত এক-বাইট এনওপি নির্দেশাবলী (নন-অপারেশন) দিয়ে প্যাড-আউট করা দরকার।

Osk.exe- এ প্যাচ করার জন্য কমান্ডটি সন্ধান করার জন্য অনুসন্ধানের প্রয়োজন হতে পারে যদি ডিসে ডিসেম্বলারের দেওয়া অফসেটগুলি এক্সাই ফাইলের পরিবর্তে কোডে থাকে। যদি হেক্স সম্পাদক এ্যাসেমব্লার অনুসন্ধান সমর্থন করে না, মূল নির্দেশ বাইট তালিকাভুক্ত করার সময় বিচ্ছিন্নকরণ করুন যাতে আপনি জানতে পারবেন কোন বাইনারি বাইটের জন্য অনুসন্ধান করতে হবে। ঠিকানাগুলি সম্বলিত নির্দেশাবলী সন্ধান করা এড়িয়ে চলুন, যেহেতু ঠিকানাগুলি এপিতে স্থানান্তরিত হতে পারে, তাই এই জাতীয় নির্দেশের কাছাকাছি বাইটগুলির ক্রম অনুসন্ধান করুন।

আপনি যদি নতুন প্যাচ বাইটগুলি হেক্স সম্পাদকে সরাসরি তৈরি করতে পারেন যদি এটি এসেম্বেলারকে সমর্থন করে। অথবা যদি এটি না হয় এবং আপনি ইন্টেল মেশিন কোডটি স্বাচ্ছন্দ্য বোধ করেন না তবে আপনার নতুন কোডটি সংকলন করতে একটি এসেমব্লারের সন্ধান করুন এবং প্যাচিংয়ের জন্য সংকলিত বাইটগুলি ব্যবহার করার জন্য এর তালিকাটি ব্যবহার করুন।


মান পরিবর্তন করা কার্যকর হবে না যে এটি আরও জেনেরিক ফাংশন দ্বারা ওভাররাইট করা হয়। রেজিস্ট্রি থেকে পাওয়া প্রতিটি মান পরিবর্তন করা অ্যাপ্লিকেশনটিকে ভেঙে দেবে। এই জেনেরিক ফাংশনের জন্য আমার উত্তর দেখুন। একটি হেক্স সম্পাদক ফলস্বরূপ কাজ করবে না, সুতরাং এটি সঠিক (ডি) এসেম্বলার (বা [ডি] সংকলক) সন্ধান করতে নেমে আসে।
তামারা উইজসম্যান

1

আমি কি ক্লিকটি স্বয়ংক্রিয় করতে অটোআইটি ব্যবহারের পরামর্শ দিতে পারি ?

কার্সারটি অন-স্ক্রিন উইন্ডোতে থাকা অবস্থায় (যেমন একটি নিয়ন্ত্রণের লুপে, কার্সারটির অবস্থান পরিবর্তন হয়েছে কিনা কিনা তা নিয়মিত বিরতিতে পরীক্ষা করা) এবং 100 মিমি পরে অটো-ক্লিক (কল ফাংশন সেন্ডক্লিক) এর পরে মাউস আইডলিংটি পর্যবেক্ষণ করা হবে বলে ধারণা করা হবে 100 নিষ্ক্রিয়তা।

বিপরীত প্রকৌশল একটি।


"আমার এটি আরও দ্রুত ক্লিক করা দরকার" "এটিকে দ্রুত স্মার্ট পথে ক্লিক করতে দিই" রুপান্তর করার জন্য +1
তমারা উইজসম্যান

0

হয়তো আপনাকে সমস্ত কিছু পুনরায় সংকলন করতে হবে না। গেম-ওয়ার্ল্ডে প্রশিক্ষক ব্যবহার করা সাধারণ, যা প্রোগ্রামটি চলাকালীন স্মৃতিতে একটি মানকে কাজে লাগায়। যদি আপনি এই সংখ্যাটি আরও ছোট করার জন্য মেমোরিতে সর্বনিম্ন মান (০.০) এবং প্রোগ্রামের কোনও লোডারের মতো কিছু পান তবে এটি কাজ করতে পারে।


এটি কার্যকর হতে পারে, কেবল যদি মান একই স্থানে থাকে বা দশম মানের যেটির মান থাকে। যাই হোক না কেন, টি অনুসন্ধান এবং দ্রুত মেমোরি সম্পাদক দুটি চেষ্টা করে দেখার জন্য দুটি দুর্দান্ত সরঞ্জাম are 500পরিবর্তে আপনি এটি অনুসন্ধান করতে চাইতে পারেন যেমন এটি কোনও ফ্লোট হিসাবে নয় এটি এটিকে বোঝায়।
তামারা উইজসম্যান

প্রথম চেষ্টা করার পরে, এটি প্রদর্শিত হবে যা osk.exeপ্রক্রিয়া তালিকায় নেই। এটি এর কারণ হিসাবে এটি winlogonব্যবহারকারীর জুড়ে কাজ করে প্রেক্ষাপটে আরম্ভ করা হয়েছে , আপনি winlogonপাশাপাশি প্রসঙ্গে মেমরি সম্পাদকটি চালু করে এটি পেতে পারেন ।
তামারা উইজসম্যান

এটি করার একটি পদ্ধতির জন্য stackoverflow.com/questions/9868079/… এবং স্ট্যাকওভারফ্লো. com / a/ 3143055 / 47064 দেখুন , সহজ পদ্ধতির প্রতিস্থাপন করা হয় osk.exeতবে এটি কেবল তখনই কাজ করবে যদি আপনি মেমরি সম্পাদক এবং উভয় প্রবর্তনকারী লঞ্চার তৈরি করেন তবে ব্যাক আপ osk.exe। তবে তারপরে আপনাকে বিবেচনা করতে হবে যে কোনও লোডারকেও এটি করা দরকার। দেখে মনে হচ্ছে এই সমাধানটি বিতরণ এবং সমাবেশের মতোই কঠিন হয়ে উঠছে, osk.exeকঠিন ... :)
তামারা উইজসম্যান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.