2009-10-28 8 views
6

जब मैं एक एमएसआई चलाता हूं (पैरामीटर के बिना) मुझे आमतौर पर संवाद बॉक्स के माध्यम से अपना रास्ता क्लिक करना पड़ता है और चुनना है कि मैं वर्तमान उपयोगकर्ता/सभी उपयोगकर्ताओं, लक्ष्य निर्देशिका इत्यादि आदि को स्थापित करना चाहता हूं। जब मैं एमएसआई चलाता हूं तो क्या होता है/qn (मूक मोड) के साथ। मैं उन सभी उत्तरों के लिए स्वचालित रूप से चुने गए उत्तरों को कैसे प्राप्त करूं?एमएसआई को/qn (मूक मोड) के साथ निष्पादित करते समय डिफ़ॉल्ट कैसे पता लगाएं?

उत्तर

6

एक एमएसआई मूल रूप से एक डेटाबेस है। आप ओर्का का उपयोग इसे खोलने और सेटिंग्स को बदलने/बदलने के लिए कर सकते हैं।

  • ओर्का पर जानकारी here मिल सकती है।
  • ओर्का का उपयोग करने के लिए पर एक त्वरित walkthrough here पाया जा सकता है।
  • कुछ हद तक आपके प्रश्न से संबंधित है, आप संपादित कर सकते हैं कि कौन से उपयोगकर्ता इंस्टॉलर चुप मोड में इंस्टॉल हो जाएंगे। जानकारी here है।

मुझे उम्मीद है कि कम से कम आपको सही दिशा में तैयार किया गया है।

संपादित करें:

उदाहरण के लिए, WiX 3.0 के लिए इंस्टॉलर डाउनलोड करने और ओर्का में खोलें।

  1. संपत्ति तालिका पर जाएं और आपको सार्वजनिक (अपरकेस) और निजी गुणों की एक सूची दिखाई देगी।
  2. ध्यान दें कि WIXUI_INSTALLDIR संपत्ति APPLICATIONFOLDER पर सेट है।
  3. निर्देशिका तालिका पर जाएं, आप देखेंगे कि APPLICATIONFOLDER "vqee3ld3|Windows Installer XML v3" या कुछ ऐसा ही डिफ़ॉल्ट है।
  4. यह पता लगाने के लिए कि कौन सा संवाद इस संपत्ति को सेट करता है, ControlEvent तालिका पर जाएं। यहां, आप InstallDirDlg ईवेंट को SetTargetPath को निकाल देंगे जब उपयोगकर्ता अगला नियंत्रण क्लिक करता है। तर्क इस घटना सेट WIXUI_INSTALLDIR, जो बारी में सेट APPLICATIONFOLDER

आप इन गुणों को संपादित करने और संस्थापक कैसे गुण बदल रहे हैं देखने के लिए चलाने की कोशिश कर सकता है। यदि आपके पास डिफ़ॉल्ट गुण हैं जिन्हें आप सेट करना चाहते हैं तो आप दौड़ सकते हैं। उदाहरण के लिए, करीब ओर्का MSI फ़ाइल पर अवरोध खोल और चलाने के लिए:

msiexec /i Wix3.msi APPLICATIONFOLDER="C:\Program Files\WiX" /qn 

अधिक एमएसआई तालिका संरचनाओं पर this powerpoint में

+1

मुझे ओर्का से अवगत है .. और मुझे पता है कि संवाद बॉक्स मूल रूप से गुणों के लिए मूल्य निर्धारित करते हैं। हालांकि .. क्या यह पता लगाने का एक तरीका है कि प्रत्येक संवाद बॉक्स द्वारा कौन से गुण संशोधित होते हैं? यह वास्तव में मेरे प्रश्न का मांस है। बहुत धन्यवाद! – Nestor

+2

नेस्टर, मैंने अपना जवाब डिफ़ॉल्ट मानों को खोजने के उदाहरण के साथ अपडेट किया है, यह कौन सा संवाद आता है, और चुप इंस्टॉल मोड में मान को ओवरराइड कैसे करें। मुझे वास्तव में केवल वाईएक्स से उत्पन्न एमएसआई के साथ अनुभव है, इसलिए मैंने माइक्रोसॉफ्ट इंस्टालरों में कोर एमएसआई टेबल के अच्छे आरेख के साथ एक पावरपॉइंट का एक लिंक जोड़ा। अच्छा EDIT और पावरपॉइंट के लिए –

+0

+1। बहुत बहुत धन्यवाद जिम – Nestor

1

यह आप कमांड लाइन के माध्यम से सार्वजनिक गुण सेट कर सकते हैं कि सही है। ये गुण हमेशा अपरकेस होते हैं, और आम तौर पर हमेशा संपत्ति तालिका में सूचीबद्ध होते हैं, हालांकि यह मामला होने की गारंटी नहीं है। प्रॉपर्टी टेबल की समीक्षा करके आप प्रत्येक सार्वजनिक संपत्ति के अनुसार डीकोड करने में सक्षम होना चाहिए। यदि नहीं, तो आमतौर पर पीडीएफ या readme.txt के रूप में एमएसआई के साथ दस्तावेज़ीकरण होता है जो मदद कर सकता है।

सही उपकरण के साथ आप प्रत्येक एमएसआई संवाद के विवरण भी देख सकते हैं और उनको सेट करने के लिए परिभाषित की गई घटनाओं की जांच कर सकते हैं। इसके लिए एक उपकरण जैसे कि इंस्टालिल्ड या वाइज़ की आवश्यकता होती है।

चुप स्थापना के लिए एक और संभावित विकल्प एक अंतर्निहित एमएसआई सुविधा है जिसे मैं अभी जानता हूं: AdminProperties प्रॉपर्टी।यहां जानकारी देखें: http://msdn.microsoft.com/en-us/library/aa367542(v=vs.85).aspx

+0

अच्छा! जब मैं मूल रूप से उत्तर दिया तो यह संपत्ति आसपास नहीं थी। –

संबंधित मुद्दे