2008-08-29 17 views
5

में प्रोग्रामेटिक रूप से .reg फ़ाइल को विलय करें रजिस्ट्री में प्रोग्राम की रूप से .reg फ़ाइल को प्रोग्राम करने के लिए सबसे अच्छा तरीका क्या है? यह इकाई परीक्षण के लिए है; .reg फ़ाइल एक टेस्ट आर्टिफैक्ट है जिसे बाद में जोड़ा जाएगा और परीक्षण के अंत में हटा दिया जाएगा।Win32 रजिस्ट्री

या, रजिस्ट्री के खिलाफ इकाई परीक्षण करने के लिए एक बेहतर तरीका है ...

उत्तर

8

एक .reg फ़ाइल का उपयोग कर रजिस्ट्री कुंजियों को निकालना संभव है, हालांकि मुझे यकीन नहीं है कि यह कितनी अच्छी तरह से प्रलेखित है।

REGEDIT4 

[-HKEY_CURRENT_USER\Software\<otherpath>] 

- कुंजी नाम के सामने कहता है Regedit है कि आप कुंजी निकालना चाहते हैं: यहाँ कैसे।

regedit /s "myfile.reg" 
2

मैं अपने फ़ाइलों के समूह को देख कर यह देखा तो नहीं है।

ऐसा लगता है कि एक .reg फ़ाइल को केवल regedit.exe विंडोज पर निष्पादन योग्य के पहले पैरामीटर के रूप में जाना जाता है।

तो आप बस regedit.exe "mytest.reg" कह सकते हैं। मुझे यकीन नहीं है कि संवाद बॉक्स से छुटकारा पाने के लिए जो आपकी पुष्टि के लिए पूछता है।

1

Win32 API फ़ंक्शन ShellExecute() या ShellExecuteEx() का उपयोग करें। अगर टिप्पणी 'खुली' है तो इसे .reg फ़ाइल को मर्ज करना चाहिए। मैंने इसका परीक्षण नहीं किया है, लेकिन इसे काम करना चाहिए।

+0

"अगर टिप्पणी 'खुली है तो" जॉनी मैथिस "का क्या मतलब है? –

0

इकाई परीक्षण लेखन निर्भरता के साथ काम कर रहा है के बारे में सबसे निराशा होती चीज़ों में से एक:

इस चुपचाप प्रकार चलाने के लिए,। टेस्ट-संचालित विकास के बारे में सबसे बड़ी चीजों में से एक यह है कि यह उस कोड का उत्पादन करता है जो इसकी निर्भरताओं से तय होता है। शांत हुह?

जब मैं खुद को इस तरह के प्रश्न पूछता हूं, तो मैं उस निर्भरता से कोड लिखने के तरीकों की तलाश करता हूं जो मैं निर्भरता से लिख रहा हूं। उस जटिलता से रजिस्ट्री के पढ़ने को अलग करें जिसे आप परीक्षण करना चाहते हैं।

5

यदि आप बाहर निकल रहे हैं, तो मैं reg कमांड (नीचे विवरण) का उपयोग करता हूं। यदि आप हमें बता सकते हैं कि आप किस भाषा के साथ काम कर रहे हैं, तो हम भाषा विशिष्ट कोड प्रदान कर सकते हैं।

सी:> reg /?

REG ऑपरेशन [पैरामीटर सूची]

ऑपरेशन [QUERY | जोड़ें | हटाएं | कॉपी करें | बचाओ | लोड | अन्वेषण | रीस्टोर | तुलना करें | निर्यात | आयात | FLAGS]

वापसी कोड: (REG को छोड़कर तुलना करें)

0 - सफल 1 - एक विशिष्ट आपरेशन प्रकार पर

विफल सहायता के लिए:

REG ADD /? आरईजी डिलीट /? [स्निप किया गया]