পটভূমি:
আমরা বেশ কিছু স্ক্রিপ্টিং এবং ব্যাচ ফাইল সহ সামান্য সাহায্যকারীরা ( xyz.cmd
) কাজ। উইন্ডোজ 7 এখন শুধুমাত্র বিস্তৃত হতে শুরু করেছে, এবং স্পষ্টতই, আমরা 32 বিবিসি বনাম 64 বিট উইন্ডোজের বিভিন্ন পরিবেশের ভেরিয়েবলগুলির সাথে যুক্ত সমস্যাগুলিকে আঘাত করি।
বিশেষত, যদি আপনি চালানো C:\Windows\system32\cmd.exe
একটি 64 বিট উইন্ডোজ, আপনি পাবেন:
...
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
...
যদি আপনি শুরু করেন C:\Windows\SysWOW64\cmd.exe
একটি 64 বিট উইন্ডোজ, আপনি পাবেন:
...
ProgramFiles=C:\Program Files (x86) <-- NOTE
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
...
এটি এমনও ঘটে, যেহেতু এই cmd.exe একটি 32 বিট প্রক্রিয়া, এটি অন্যান্য সমস্ত SysWOW64 পুনঃনির্দেশগুলি "বিনামূল্যে জন্য" পায় - যেকোনও আমন্ত্রণ regedit
32bit রেজিস্ট্রি, ইত্যাদি যেতে হবে
ব্যাচ ফাইলটি 32bit অ্যাপ্লিকেশনের সাথে সম্পর্কিত কিছু কাজ করতে অনুমিত হলে এটি অত্যন্ত উপকারী হতে পারে, উদাঃ। পথ + রেজিস্ট্রি স্টাফ।
প্রশ্ন:
GIven যে আমার ব্যাচ ফাইলগুলির একটি শ্রেণী রয়েছে যা আমি 32bit সংস্করণে সর্বদা চালাতে চাই cmd.exe
, একটি আছে - সহজ! - উইন্ডোজ 64 বিট সংস্করণগুলিতে এই ব্যাচ ফাইলগুলিকে সর্বদা 32 বিট cmd.exe ব্যবহার করতে এবং Windows এর 32bit সংস্করণগুলিতে সাধারণত চালানোর উপায় কী?
স্পষ্টত আমি পরিবেশের ভেরিয়েবলগুলি পরিবর্তন করতে এবং প্রতিনিয়ত আমন্ত্রণগুলি এবং / অথবা প্রতিস্থাপনের জন্য যেমন প্রতিটি ব্যাচ-ফাইলে "হেডার" যোগ করতে পারি স্পষ্টত আমি শুধু ব্যবহারকারীকে বলতে পারি "এই ব্যাচ ফাইলটি SysWOW64 cmd.exe এর মাধ্যমে চালান", তবে এই সমাধানগুলিও খুব আকর্ষণীয় বলে মনে হচ্ছে না :-)