मेरे पास एक विजुअल स्टूडियो 2005 प्रोजेक्ट (सी #) है जो डेटा स्टोरेज इंजन के रूप में MySQL का उपयोग करता है, मैं एक एमएसआई पैकेज बनाना चाहता हूं जो ऐप इंस्टॉल करता है, और चुपचाप MySQL इंस्टॉल करने के बाद। मैं इसमें देख रहा हूं लेकिन मुझे ज्यादा जानकारी नहीं मिली।विजुअलस्टूडियो 2005 अनुप्रयोग के साथ MySQL सर्वर को तैनात करें
मैं चुपचाप MySQL पैकेज स्थापित किया है और कॉन्फ़िगर यह सीएमडी
में इस दो statments साथ के बाद स्थापित करें:
msiexec /qb /i "c:\mysql.msi" /l* d:\log_mysql_test.txt INSTALLDIR=d:\mysql_test_mdps
कॉन्फ़िगर:
D:\mysql_test_mdps\bin\MySQLInstanceConfig.exe -i -q "-lD:\mysql_config_log.txt" "-pD:\mysql_test_mdps\bin" "-tD:\mysql_test_mdps\my-template.ini" "-cD:\mysql_test_mdps\my.ini" -v5.5.9 ServerType=DEVELOPMENT DatabaseType=MIXED ConnectionUsage=DSS Port=53306 ServiceName=MySQL_AGM RootPassword=root1234 SkipNetworking=no AddBinToPath=yes
लेकिन अब मैं नहीं जानें कि विजुअल स्टूडियो कहां कहें कि यह मेरे आवेदन को स्थापित करने से पहले या उसके बाद करता है। मैं इसे गूगलज कर रहा हूं, लेकिन मुझे कोई उपयोगी मदद नहीं मिली।
मुझे आशा है कि तुम मुझे मार्गदर्शन कर सकते हैं :)
संपादित करें: मैं कस्टम क्रियाओं के साथ समाधान के आसपास काम कर रहा है, मैं इस article कि एक कस्टम संस्थापक क्लास का उपयोग कस्टम कार्रवाई ले जाने के लिए मिल गया है। यह पहली जगह ठीक दिखता है लेकिन मुझे समस्या हो रही है क्योंकि जब मेरा एमएसआई पैकेज दूसरे एमएसआई इंस्टॉलर (MySQL) को लॉन्च करने का प्रयास करता है तो मुझे कोड 2869 के साथ एक त्रुटि मिलती है जो "एक्सेस अस्वीकृत" कहती है।
मैं भी इस समस्या को तलाश रहे हैं और इस तरह जब पहली एमएसआई दूसरा एमएसआई यह सही विशेषाधिकार लागू नहीं है और स्थापना विफल चलाने के लिए कोशिश कर रहा है देखो ...
क्या तुम जानते हो मैं क्या कर सकता हूँ? या मैं दूसरा एमएसआई इंस्टॉलर कैसे लॉन्च कर सकता हूं? पूर्ण विशेषाधिकार (या कम से कम पहले इंस्टॉलर के समान)
यह वह कोड है जिसका उपयोग मैं प्रक्रिया ऑब्जेक्ट बनाने के लिए कर रहा हूं।
string arg1 = "/qb /i \"" + filepath + "\" /l* \"" + Path.Combine(installpath, logfile) + "\" INSTALLDIR=\"" + installpath + "\"";
Process p = new Process();
p.StartInfo.FileName = "msiexec.exe";
p.StartInfo.Arguments = arg1;
p.Start();
हाय, धन्यवाद, मैं कोशिश करने जा रहा हूँ कस्टम क्रियाएं :) – SubniC