विस्टा RTM पर Sysnative


0

मैं वर्तमान में एक बैच स्क्रिप्ट लिख रहा हूं जो एक ऑपरेटिंग सिस्टम पर प्रक्रियाएं शुरू करेगा। इस बैच स्क्रिप्ट को एक परीक्षण एप्लिकेशन से कहा जाता है जो 32-बिट और 64-बिट ऑपरेटिंग सिस्टम दोनों पर 32-बिट एप्लिकेशन के रूप में बनाया और चलाया जाता है। बैच स्क्रिप्ट निम्नानुसार लिखी गई है:

set EXE=%1
if exist %WINDIR%\sysnative\%1 ( set EXE=%WINDIR%\sysnative\%1 )
start "" "%EXE%"

मैं 64-बिट ऑपरेटिंग सिस्टम पर 64-बिट एप्लिकेशन और 32-बिट ऑपरेटिंग सिस्टम पर 32-बिट एप्लिकेशन को शुरू करने के लिए sysnative चर का उपयोग कर रहा हूं। मैं इस स्क्रिप्ट का उपयोग विस्टा और उसके बाद के ऑपरेटिंग सिस्टम पर करता हूँ। यह Windows Vista x64 RTM को छोड़कर सभी ऑपरेटिंग सिस्टम पर ठीक से काम करता है। जब बुलाया जाता है, तो मुझे एक "एप्लिकेशन प्राप्त करने में विफल रहा है क्योंकि इसका साइड-बाय-साइड कॉन्फ़िगरेशन गलत है। कृपया अधिक विस्तार के लिए एप्लिकेशन ईवेंट लॉग देखें।"

मैंने Windows Vista x64 RTM पर 32-बिट कमांड लाइन खोली है और C: \ Windows \ sysnative पर नेविगेट किया है और वहां से notepad.exe, calc.exe आदि कॉल करने का प्रयास किया है और हमेशा एक ही त्रुटि प्राप्त करता है। मैंने Microsoft Visual c ++ 2008 पुनर्वितरण पैकेज की स्थापना रद्द करने और पुन: स्थापित करने की भी कोशिश की है, लेकिन कोई फायदा नहीं हुआ। एप्लिकेशन / सुरक्षा / सिस्टम ईवेंट लॉग में इससे संबंधित कोई सूचना / चेतावनी / त्रुटि संदेश नहीं होते हैं। यह समस्या केवल Windows Vista x64 RTM पर है। कोई विचार?


SysNative चर है तो यह अपने Vista के WinSxS की तरह अधिक दूषित है लगता है, विस्टा 64 बिट में उपलब्ध है। क्या यह प्रत्येक विस्टा मशीन पर होता है, या केवल एक जिसे आपने परीक्षण किया है? क्या आपने इसे अभी तक स्थापित एक ताजा विस्टा पर आज़माया है?
14c atιᴇ007

यह केवल इस विस्टा मशीन पर होता है। स्क्रिप्ट Vista x86 / x64 SP1 और SP2 और Vista x86 RTM पर काम करती है। यह केवल इस विशिष्ट मशीन पर हुआ। मैं एक नया Vista स्थापित करने की कोशिश करूंगा और देखूंगा कि क्या मैं उसी मुद्दे का अनुभव करता हूं।
fowlball1010

जवाबों:


1

आपको एक C ++ रनटाइम याद आती है। कमांड प्रॉम्प्ट (cmd.exe) को व्यवस्थापक अधिकारों के साथ चलाएँ और यह कमांड चलाएँ:

SxsTrace Trace -logfile:SxsTrace.etl

अब स्क्रिप्ट चलाएँ जो साइडबाइड त्रुटि का कारण बनती है।

SxsTrace.etl जेनरेट करने के लिए कमांड प्रॉम्प्ट ENTER / RETURN पर वापस जाएँ। अब इसे टाइप करें:

sxstrace Parse -logfile:SxSTrace.etl -outfile:SxSTrace.txt

अब SxSTrace.txt ट्रेस खोलें और देखें कि कौन सा VC ++ रनटाइम गायब है।

यदि आप अनिश्चित हैं, तो कृपया SxSTrace.txt को क्लाउड सेवा / pastebin पर अपलोड करें और यहां एक लिंक पोस्ट करें।


मैंने ऊपर बताए गए चरणों को चलाया और यह अनिश्चित है कि वीसी ++ गायब है जिसे आउटपुट दिया गया है। परिणाम लिंक
fowlball1010

ठीक है, ऐसा लगता है कि कोई रनटाइम नहीं है। मैं वास्तव में इससे उपयोगी कुछ भी नहीं देख सकता। शायद यह एक बग है जो Sp1 के साथ तय किया गया था।
Magicandre1981

-1

यह केवल इस विस्टा मशीन पर होता है।

SysNative वैरिएबल विस्टा में 64-बिट में उपलब्ध है, इसलिए ऐसा लगता है कि आपका विस्टा का विनस्क्स दूषित है।

एक गड़बड़ WinSxS के लिए सबसे आसान फिक्स सिर्फ ओएस को खरोंच से पुनर्स्थापित करना है।

एक विकल्प जबरदस्ती WinSxS का स्वामित्व लेना है और यह फाइलें हैं, और फिर फ़ाइलों को एक ज्ञात-अच्छे विस्टा 64-बिट मशीन से कॉपी करें, फिर स्वामित्व वापस बदलें, और प्रदर्शन करें SFC /scannow

उन कार्यों को करने के बारे में अधिक विवरण घाव इस सवाल के दायरे से बाहर है।


मैंने Vista x64 OS RTM का एक नया पुनर्स्थापना बनाया और ऊपर दिए गए समान चरणों को निष्पादित करने का प्रयास करते समय एक ही समस्या का अनुभव किया। मैंने @ Magicandre1981 द्वारा सुझाए गए sxstrace को चलाया है और परिणामों को pastebin पर पोस्ट किया है (उनके सुझाव पर टिप्पणी देखें)।
fowlball1010
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.