गूगल क्रोम: ऑलवेज ऑन टॉप बग


15

अस्पष्ट शीर्षक के लिए क्षमा करें, लेकिन यह इतना कठिन है कि कृपया मेरे साथ सहन करें।

मैं वेब डेवलपमेंट के लिए काम में विंडोज विस्टा का उपयोग कर रहा हूं और कभी-कभी जब मैं विंडो पर क्लिक या ऑल्ट-टैब करता हूं, तो विंडो को फोकस मिलेगा लेकिन इसे सामने नहीं लाया जाएगा।

विंडो को सामने लाने के लिए, मुझे एप्लिकेशन बॉर्डर पर क्लिक करना होगा (जब रिसाइज़ कर्सर प्रकट होता है) और विंडो फिर सामने की ओर कूद जाएगी।

मुझे अब लगभग एक साल तक यह समस्या रही है और यह दिन में कम से कम एक दर्जन बार होता है, लेकिन यह हर समय ऐसा नहीं करता है - यादृच्छिक लगता है।

मुझे उम्मीद है कि मैंने इस मुद्दे को पूरी तरह से समझाया है (और आप इसे समझ गए हैं) और इस समस्या को हल करने के लिए किसी भी रचनात्मक उत्तर या टिप्पणियों की सराहना करेंगे।

उदाहरण: यदि मैं Google Chrome से Notepad में Alt-Tab करता हूं और यह समस्या बेतरतीब ढंग से होती है, तो Google Chrome नोटपैड के सामने रहेगा, हालाँकि, मैं नोटपैड में पाठ टाइप करने में सक्षम रहूंगा, जबकि विंडो Google Chrome के पीछे है। नोटपैड के कंटेंट एरिया पर क्लिक करने पर यह सामने नहीं आएगा बल्कि विंडो बॉर्डर वसीयत पर क्लिक करना होगा।

वीडियो एक्जाम

http://vimeo.com/19388998

इस वीडियो में, मैंने Google Chome से UltraEdit पर क्लिक किया और क्रोम फ़ॉन्ट में रहा, लेकिन जैसा कि आप देख सकते हैं, मैं अभी भी UltraEdit में टाइप कर सकता हूं।

मैं यह मानना ​​शुरू कर रहा हूं कि यह Google Chrome में बग हो सकता है, इसलिए मैं यह देखना जारी रखूंगा कि क्या यह अन्य अनुप्रयोगों के बीच है।


क्या आप अपने कंप्यूटर को कम रिज़ॉल्यूशन (एचडी 720p या उससे कम) पर सेट कर सकते हैं और एक वीडियो अपलोड कर सकते हैं जो जिंग का उपयोग करके समस्या दिखाता है । इसके अलावा, अनुप्रयोगों कि स्वचालित रूप से के साथ शुरू अक्षम करने का प्रयास Autoruns और ShellExView अगर एक निष्क्रिय कार्यक्रम या एक्सप्लोरर विस्तार इस व्यवहार उत्पन्न कर रहा है देखने के लिए, क्या आप अक्षम हालांकि देखना ...
तमारा Wijsman

क्या ऐसा होता है जब आपके सामने एक निश्चित आवेदन खुला होता है और उसी से टैब को खोलने की कोशिश करते हैं? यह एक मामला हो सकता है कि खिड़की हमेशा शीर्ष पर रहने के लिए निर्धारित की गई है। मेरे पास यह मुद्दा थोड़ी देर के लिए था जब मेरी mIRC खिड़की हमेशा शीर्ष पर थी।
विंडोस

मैं इस समस्या का सामना भी करता हूं (विंडोज 7 का उपयोग करके)। जबकि मुझे समस्या की प्रकृति का ठीक-ठीक पता नहीं है, मुझे लगता है कि ऐसा तब होता है जब मेरे पास मेरा वेब ब्राउज़र खुला होता है और मेरे द्वारा खोले गए वेब साइटों में से एक पर फ्लैश सामग्री होती है। हालांकि कहा कि मैं इसे दोहराने के लिए प्रतीत नहीं कर सकते।
Happy_soil 3

अब जब मैं इसके बारे में सोचता हूं, तो मुझे पृष्ठभूमि में चलने वाले कुछ प्रोग्राम मिले जो "ऑलवेज ऑन टॉप" के रूप में सेट हैं, इसलिए मुझे लगता है कि विंडो फ़ोकसिंग में हस्तक्षेप हो सकता है।
Happy_soil

@happy_soil: आप इसे उत्तर के रूप में रख सकते हैं। एक रनिंग "ऑलवेज ऑन टॉप" विंडो इस व्यवहार के लिए एक अच्छी व्याख्या है।
हरमिस्क

जवाबों:


6

क्रोम के मामले में, यह एक ज्ञात मुद्दा है: क्रोम विंडो हमेशा ऑन-टॉप व्यवहार

इस समस्या का एक त्वरित समाधान Chrome विंडो का चयन करना और F11 को दो बार दबाना है।


इस बग के लिंक के लिए धन्यवाद, हालांकि, यह समस्या नहीं है जो मैं कर रहा हूं। मेरी समस्या एप्लिकेशन विंडो से संबंधित है न कि टास्कबार से। मैं इस स्तर पर पुष्टि नहीं कर सकता कि यह क्रोम इस समस्या का कारण है या नहीं।
गेटकीलर

मुझे खेद है कि अगर पिछली टिप्पणी अशिष्ट लग रही थी। यह मेरा इरादा नहीं था। मैं आपके इनपुट की सराहना करता हूं :)
गेटकीलर

यह बग स्पष्ट रूप से ऑल-टैब और टास्कबार दोनों को प्रभावित करता है। प्रारंभिक बग रिपोर्ट टास्कबार के लिए थी, लेकिन टिप्पणी 41 ने भी ऑल-टैब पर इसके प्रभाव को नोट किया। (और आपकी टिप्पणी अशिष्टतापूर्ण नहीं थी।)
harrymc

आगे पढ़ने और परीक्षण के बाद मैं सहमत हूं कि विंडोज के लिए Google क्रोम वास्तव में समस्या है। मैंने आपके जवाब में वर्कअराउंड जोड़ दिए हैं, जबकि हम समस्या को ठीक करने के लिए Google की प्रतीक्षा कर रहे हैं।
गेटकीलर

1
मैं विंडोज 10 पर हूं। यह समस्या अभी भी है, और F11 दो बार भी काम नहीं करता है।
रोजी

4

वो कैसा दिखता है?

उस समस्या के करीब केवल एक व्यवहार है और वह ऑलवेज ऑन टॉप व्यवहार होगा।
कोड का कुछ टुकड़ा, शायद कार्यक्रम से ही आपकी खिड़की की संपत्ति को बदल सकता है ...

"ऑलवेज ऑन टॉप" होने के लिए एक विंडो कैसे सेट की जाती है?

फॉर्म कैसे बनाएं जो हमेशा शीर्ष पर रहता है, हमें दिखाता है कि SetWindowPos को HWND_TOPMOST पर सेट किए गए दूसरे पैरामीटर के साथ कहा जाता है, यह तुरंत इसे शीर्ष पर रखता है और इसे इस तरह रखता है।

एक त्वरित Google के बाद, यह परिणाम User32.dll को इस फ़ंक्शन का स्वामी बताता है।

मेरी खिड़की "ऑलवेज ऑन टॉप" को कौन सेट करता है?

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

क्षमा करें, लेकिन यह कठिन होमवर्क है:

  • एपीआई मॉनिटर डाउनलोड करें और इसे स्थापित करें।
  • एक व्यवस्थापक के रूप में ओपन एपीआई मॉनिटर , यदि आपके पास 64 बिट है, तो आपको दो बार ऐसा करने की आवश्यकता है।
  • सुनिश्चित करें कि बाईं ओर API कैप्चर फ़िल्टर में कुछ भी चेक नहीं किया गया है
  • उसी जगह पर, उस डायलॉग के शीर्ष पर सभी मॉड्यूल को User32.dll में बदलें ।
  • के लिए जाओ

    Windows Application UI Development > Windows and Messages > Windows
    

    और फिर

    User32.dll > SetWindowPos
    

अब, आप कुछ प्रक्रियाओं को हुक करना चाहेंगे। सावधान का शब्द: पीआईडी ​​के आधार पर छाँटें और ऐसी किसी winlogon.exeभी चीज़ पर हुक न लगाएँ, जिसकी तुलना में कम पीआईडी ​​हो, अगर आप ऐसा करते हैं तो आप या तो अपने सिस्टम को लटका देंगे या दुर्घटनाग्रस्त हो जाएंगे। आप अन्य प्रक्रियाओं के साथ भी इस व्यवहार का अनुभव कर सकते हैं, लेकिन यह एक परीक्षण और त्रुटि की तरह है जिसे देखने के लिए आप हुक कर सकते हैं। इसलिए:

  • PID द्वारा सॉर्ट करें, और जो कुछ नया है, उससे हुक करें winlogon.exe
  • यदि सबकुछ ठीक हो जाता है, तो आप हुक प्रोसेस प्रक्रिया में थ्रेड्स के माध्यम से देख सकते हैं ।
  • ऐसा दिखने वाला API कॉल खोजें:

    SetWindowPos (0x000000000002043c, HWND_BOTTOM | 0x00000000fffffffe , 0, 0, 0, 0,
    SWP_NOACTIVATE | SWP_NOMOVE। SWP_NOSOVE)

HWND_BOTTOM के साथ SetWindowPos के लिए एक कॉल | 0x00000000fffffffe ( -2 + 1 = -1 = HWND_TOPMOST ) हम क्या कर रहे हैं और यह प्रक्रिया जो इस कॉल को करती है वह है जिसे आपको अपनी समस्या के लिए दोष देना चाहिए।

मैं हार गया ... मैं अपनी "ऑलवेज ऑन टॉप" समस्या को कैसे माप सकता हूं?

आग से लड़ाई, हम HWND_NOTOPMOST के लिए सभी विंडो सेट करने जा रहे हैं ।

Yikes, प्रोग्रामिंग! लेकिन, यह आसानी से स्क्रिप्टिंग के माध्यम से भी किया जा सकता है ...

तो एक बहुत ही सरल होमवर्क कार्य:

  • डाउनलोड AutoIt v3

  • एक ByeByeTopMost.au3 फ़ाइल बनाएँ जिसमें शामिल हैं:

    While 1
        $var = WinList()
    
        For $i = 1 to $var[0][0]
            WinSetOnTop($var[$i][1], "", 0)
        Next
    
        Sleep(5000)
    WEnd
    
  • इसे अपने स्टार्ट-अप फ़ोल्डर में रखें और इसे चलाएं या रिबूट करें।

या अगर आपको होमवर्क पसंद नहीं है, तो मेरे द्वारा बनाई गई इस ज़िप फ़ाइल को डाउनलोड करें

मज़े करो... :-)

पुनश्च: आप इस अंतिम मामले में "ऑलवेज ऑन टॉप" सुविधा का उपयोग नहीं कर सकते। या तो समस्या निवारण या काम के आसपास ... ;-)


मुझे यह उत्तर पसंद है।
सुपरसिरियल

जब समस्या आती है तो SetWindowPos फायरिंग नहीं करता है ... मुझे यह भी बहुत अप्रिय लगता है कि आप इस सवाल का पूरी तरह से नाम बदलें और फिर इसके लिए उत्तर लिखें।
गेटकीलर

1
@ गेटकीलर: यह कैसा आक्रामक है? यह आपको बेहतर उत्तर प्राप्त करने में मदद करता है। यह आपकी समस्या का एक अधिक उचित विवरण है (जैसा कि "सामने की खिड़कियां" आमतौर पर "हमेशा-पर-शीर्ष" के रूप में जाना जाता है) और अब आपने उत्तर प्राप्त करने के बाद अपना शीर्षक Google Chrome में बदल दिया है । किसी भी तरह, आप हमेशा रोलबैक करने के लिए स्वतंत्र हैं और मुझे खुशी है कि आपने अपनी समस्या हल कर ली थी, इसके अलावा SetWindowPos समस्या होने से पहले आग लग जाएगी या इसी तरह की एक अन्य प्रक्रिया जिसका एक ही प्रभाव हो सकता है उसे कॉल किया जा सकता है ... :-)
Tamara Wijsman

4

इसे अक्षम करने के लिए आपको हिट करना होगा

ALT + स्पेस + सी

alt+ space+c

इन बटन को दबाने के बाद गूगल क्रोम ब्राउजर अपने आप बंद हो जाएगा। फिर Google क्रोम ब्राउज़र को फिर से शुरू करें।

समस्या हमेशा के लिए हल हो जाएगी :)


ALT + Space + C ने मेरा ब्राउज़र बंद कर दिया और समस्या को ठीक कर दिया। मुझे आपके उत्तर को वापस लेने के लिए यहाँ वापस आना पड़ा।
ऑस्कर Fraxedas

1
यह केवल एक चीज है जिसने मेरे मुद्दे को हल किया।
ddonche

1

इस समस्या को भी हल किया और इसे दरकिनार करने का एक तरीका खोजा। मैंने "ऑलवेज ऑन टॉप" सॉफ़्टवेयर स्थापित किया है ।

और मैं इसे विंडोज के लिए क्रोम पर उपयोग करता हूं, जिसने संपत्ति की स्थिति को बदल दिया alwaysontop


0

एक त्वरित फिक्स विंडोज 7/8 / 8.1 पर टास्कबार के दाईं ओर दो बार 'शो डेस्कटॉप' बटन पर क्लिक करना है


1
जैसा कि लिखा गया है, आपका उत्तर बहुत कम उपयोगी जानकारी प्रदान करता है। क्या आप इसे थोड़ा विस्तार कर सकते हैं?
bwDraco 20

0

मुझे भी यही समस्या थी और स्टार्ट मेन्यू में "स्विच यूजर" पर जाकर इसे ठीक करने में कामयाब रहे और खिड़कियों में वापस लॉग इन करने के बाद टूलबार का सम्मान किया। ऐसा लग रहा था कि सभी विंडोज़ प्रभावित हो सकती हैं और जबकि क्रोम एक कारण हो सकता है, यह निश्चित रूप से विंडोज सिस्टम को प्रभावित करने वाला प्रतीत होता है, यह विंडोज़ के भीतर से ही संभावित अपराधी का सुझाव देता है। विंडोज एक्सपी और 7 दोनों पर 5 साल के लिए क्रोम उपयोगकर्ता होने के बाद मेरे पहले रन-इन के बाद इस पोस्ट को बनाना।


0

वैसे मुझे भी यही समस्या थी और F11 को डबल टैप करने से कुछ हल नहीं हुआ। लेकिन मैंने देखा, चूंकि मेरे पास दो Google क्रोम खिड़कियां खुली थीं, उनमें से केवल एक ही मेरे पास मौजूद हर दूसरी खिड़की (स्टीम, नोटपैड, आदि) के ऊपर थी। मैंने तब हमेशा शीर्ष टैब पर एक लिया और इसके साथ एक नई विंडो बनाई और फिर शीर्ष विंडो से हर दूसरे टैब को नए पर ले गया। जब मैं इसे चुनता हूं तो सामान्य रूप से प्रत्येक विंडो शीर्ष पर दिखाई देती है।

उम्मीद है कि यह मदद कर सकता है :)


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.