मुझे अपने पैट वैरिएबल में एक नई प्रविष्टि जोड़ने की आवश्यकता थी। यह मेरी नौकरी में मेरे लिए एक सामान्य गतिविधि है, लेकिन मैंने हाल ही में विंडोज 8 का उपयोग करना शुरू कर दिया है। मैंने माना कि यह प्रक्रिया विंडोज 7, विस्टा, एक्सपी के समान होगी ...
यहाँ घटनाओं का मेरा क्रम है:
- ओपन सिस्टम गुण (प्रारंभ-> [प्रकार "नियंत्रण कक्ष"] -> नियंत्रण कक्ष \ प्रणाली और सुरक्षा \ प्रणाली -> उन्नत प्रणाली सेटिंग्स -> पर्यावरण चर)
- मेरे USER पथ चर की शुरुआत में नया पथ जोड़ें (C: \ dev \ Java \ Apache-ant-1.8.4; बिन;)
- कमांड प्रॉम्प्ट खोला (प्रारंभ -> [प्रकार "कमांड प्रॉम्प्ट" दर्ज करें] -> [टाइप "पथ" दर्ज करें]
मेरी नई पथ प्रविष्टि उपलब्ध नहीं है (संलग्न चित्र और वीडियो देखें)। मैंने विंडोज 7 मशीन पर ठीक उसी प्रक्रिया को डुप्लिकेट किया और यह काम किया।
संपादित करें
विंडोज 8 पर्यावरण चर और कमांड प्रॉम्प्ट वीडियो
संपादित करें
यह निश्चित रूप से विंडोज 7 का व्यवहार नहीं है। इस वीडियो को देखने के लिए मैं विंडोज 7 में काम करने की अपेक्षा करता हूं । http://youtu.be/95JXY5X0fII
EDIT 5/31/2013
इसलिए, बहुत हताशा के बाद, मैंने इस WM_SETTINGCHANGE
घटना का परीक्षण करने के लिए एक छोटा सी # ऐप लिखा । यह कोड विंडोज 7 और विंडोज 8 दोनों में घटना को प्राप्त करता है। हालांकि, मेरे सिस्टम पर विंडोज 8 में, मुझे सही रास्ता नहीं मिलता है; लेकिन, मैं विंडोज 7 में करता हूं। इसे अन्य विंडोज 8 सिस्टम में पुन: प्रस्तुत नहीं किया जा सकता है।
यहाँ C # कोड है।
using System;
using Microsoft.Win32;
public sealed class App
{
static void Main()
{
SystemEvents.UserPreferenceChanging += new UserPreferenceChangingEventHandler(OnUserPreferenceChanging);
Console.WriteLine("Waiting for system events.");
Console.WriteLine("Press <Enter> to exit.");
Console.ReadLine();
}
static void OnUserPreferenceChanging(object sender, UserPreferenceChangingEventArgs e)
{
Console.WriteLine("The user preference is changing. Category={0}", e.Category);
Console.WriteLine("path={0}", System.Environment.GetEnvironmentVariable("PATH"));
}
}
OnUserPreferenceChanging
के बराबर है WM_SETTINGCHANGE
विंडोज 7 में चल रहे C # प्रोग्राम (आप देख सकते हैं कि यह घटना सामने आई है और यह सही रास्ता चुनता है)।
विंडोज 8 में चल रहे C # प्रोग्राम (आप देख सकते हैं कि यह घटना सामने आ सकती है, लेकिन गलत रास्ता है)।
मेरे पर्यावरण के बारे में कुछ ऐसा है जो इस समस्या का शिकार है। हालाँकि, क्या यह विंडोज 8 बग है?
EDIT 2014-04-28
इस और कई अन्य मुद्दों के कारण, हम अब डेस्कटॉप पर विंडोज 8 का उपयोग नहीं करते हैं। हमारे पास इस समस्या के साथ परीक्षण और प्रयोग जारी रखने का वातावरण नहीं है। अभी भी हमारे लिए इस समस्या का कोई जवाब या संकल्प नहीं है। नीचे दिए गए उत्तर हमारी समस्या का समाधान नहीं करते हैं।
cmd
एक नया उदाहरण लॉन्च किए जाने के मामले में नया परिवेश चर दिखाई दे रहा था। बेशक पहले से चल रहे cmd
अद्यतन वातावरण नहीं मिला।