मैं विंडोज 8 में कमांड-लाइन से मेट्रो-एप्लिकेशन कैसे चला सकता हूं?


20

मैं एक स्वचालन प्रणाली विकसित कर रहा हूं और इसकी एक विशेषता कमांड लाइन से एप्लिकेशन चला रही है (मेरा मतलब है, स्वचालित रूप से मानव अंतर्वेशन के बिना)।

विंडोज 7 पर मैं सब कुछ चला सकता हूं जो मैं कमांड-लाइन कॉल से चाहता हूं, विंडोज 8 के साथ भी ऐसा ही कुछ तरीका है, जिस पर मेट्रो-ऐप भी इंस्टॉल किए गए हैं?


Windows 8 में, है वहाँ एक कमांड लाइन?
इयान बॉयड

1
हाँ, बस मेट्रो इंटरफ़ेस पर cmd टाइप करें और इसे निष्पादित करें।
दिओगो

क्या आप VS का उपयोग कर रहे हैं?
17

2
FWIW, आप इसके बजाय पॉवर्स पर ध्यान केंद्रित करना चाह सकते हैं। AppX पैकेज में मेट्रो ऐप्स ( Get-Help Appxविवरण के लिए देखें) के प्रबंधन के लिए कई cmdlets शामिल हैं , हालांकि मुझे उन्हें चलाने के लिए कुछ भी नहीं मिला।
इंड्रे

1
मेरी जानकारी से, आप कमांड लाइन से मेट्रो ऐप नहीं चला सकते। मुझे उम्मीद है कि कोई न कोई हैक / समाधान जानता है।
कॉर्पोरेट गीक

जवाबों:


12

हाँ! मुझे एक रास्ता मिल गया है...

इस स्रोत कोड ("डेस्कटॉप ऐप से एक मेट्रो स्टाइल ऐप खोलें") के आधार पर , मुझे एहसास हुआ कि मैं मेट्रो ऐप को वैसे ही कॉल कर सकता हूं जैसे हम आमतौर पर मैन्युअल रूप से चलाते हैं। मेरा मतलब है, यदि आप Ctrl+ को दबाते Escहैं और मेट्रो की स्क्रीन पर जाते हैं, तो आप बस मेट्रो ऐप का नाम टाइप कर सकते हैं, जैसे कि "स्टोर" उदाहरण के लिए, दबाएं Enterऔर यही है, मेट्रो ऐप चल रहा है। इसके आधार पर मैंने इन चरणों को स्वचालित रूप से करने के लिए एक बहुत ही सरल VBScript बनाई:

ObjShell = WScript.CreateObject ("WScript.Shell") सेट करें

objShell.SendKeys "^ {ESC}"

WScript.Sleep 1000

objShell.SendKeys WScript.Arguments.Item (0)

WScript.Sleep 1000

objShell.SendKeys "{ENTER}"

इसे "मेट्रो.vbs" के रूप में सहेजें और पहले तर्क पर मेट्रो ऐप के नाम के साथ कमांड-लाइन से कॉल करें:

मेट्रो स्टोर

यह बहुत सरल और अनुकूलित तरीका है।

पुनश्च: सभी क्रेडिट , कोडप्लेक्स साइट उपयोगकर्ता, जो संबंधित कोड बनाते हैं , अलखुजै को दिया । धन्यवाद।


आह, मैं एक ही बात सोच रहा था। दिलचस्प समाधान। एकमात्र समस्या यह है कि यदि आपके पास एक ही नाम के दो कार्यक्रम हैं, जैसे एवरनोट के मेट्रो और डेस्कटॉप दोनों संस्करण स्थापित हैं। जो उपरोक्त के साथ लॉन्च हो जाता है ?? एक और तरीका होना चाहिए क्योंकि विज़ुअल स्टूडियो आपके द्वारा विकसित किए जा रहे एप्लिकेशन को लॉन्च कर सकता है।
जिम मैककेथ

मुझे लगता है कि क्योंकि ctrl + esc, यह केवल मेट्रो ऐप खोलेगा ... यह कुछ ऐसा है जो परीक्षण को विचारेगा।
दिओगो

नहीं, बस यह कोशिश की। [Ctrl] + [Esc] [Win] के समान ही है, और दोनों बस स्टार्ट मेनू दिखाते हैं , जो वहां किसी भी कार्यक्रम को लॉन्च करने की अनुमति देता है - मेट्रो और डेस्कटॉप एक जैसे।
जिम मैकेथ

तो, विंडोज 8 क्या करता है जब दो ऐप मेट्रो और डेस्क का एक ही नाम है ??? यह मेट्रो इंटरफ़ेस पर डुप्लिकेट हो गया है?
डायगो

हाँ, यह वास्तव में कष्टप्रद है। मैंने ठीक उसी कारण से एवरनोट के मेट्रो संस्करण की स्थापना रद्द की।
जिम मैककेथ

6

निम्नलिखित ब्लॉग पोस्ट और सपोर्टिंग कोड आपको दिखाते हैं कि यह PowerApp में IApplicationActivationManager के साथ कैसे किया जाए।

मेट्रो ऐप्स की एक सूची प्राप्त करें और उन्हें PowerShell «Tome's Land of IT का उपयोग करके विंडोज 8 में लॉन्च करें

सौभाग्य से, मैं स्टैक ओवरफ्लो पर कुछ कोड ढूंढने में सक्षम था, जिसमें दिखाया गया था कि इसे C # में कैसे उपयोग किया जाए (पोस्ट ने रजिस्ट्री जानकारी भी सूचीबद्ध की है जो मैं इस लेख में वर्णन करूंगा)। कुछ कोड और ऐड-टाइप सिंटैक्स को ट्विक करने के बाद, मैं PowerShell में आवश्यक फ़ंक्शन को उजागर करने में सक्षम था। उसके बाद यह केवल फ़ंक्शन को किसी चीज़ में लपेटने का मामला था जो पावरशेल जैसा दिखता है।

कोड पॉशकोड पर पाया जा सकता है ।


सुपर उपयोगकर्ता, टोम में आपका स्वागत है! हम उत्तर स्व-समाहित करना चाहते हैं, इस प्रकार बाहरी संसाधनों पर बहुत अधिक निर्भर नहीं हैं। मैंने आपके ब्लॉग पोस्ट के सबसे अधिक प्रासंगिक भागों को उद्धृत किया है, लेकिन आप ओपी की सटीक समस्या को हल करने के संबंध में बहुत अधिक में संपादित करने के लिए स्वतंत्र हैं ।
slhck

बहुत अच्छी जानकारी, यहाँ!
बेन रिचर्ड्स

5

मैंने इसे करने का एक और तरीका निकाला और http://www.itsjustwhatever.com/2012/10/28/launch-windows-8-metro-apps-from-a-desktop- पर इस पर एक त्वरित लेख लिखा । शॉर्टकट या कमांड लाइन /

संक्षिप्त संस्करण: एक शॉर्टकट बनाएं जो बिंग्न्यूज़ की ओर इशारा करता है: // आप देख सकते हैं कि क्या यह वही करता है जो आप चाहते हैं। यदि ऐसा है तो वेबसाइट पर नाम प्राप्त करने के लिए अधिक निर्देश है।

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