मैं अपनी बाइनरी (जैसे विंडोज संसाधन प्रणाली) में टेक्स्ट फ़ाइलों को एम्बेड करने का एक तरीका ढूंढ रहा हूं। मुझे कुछ ऐसा प्लेटफॉर्म स्वतंत्र है (विंडोज़ और लिनक्स में काम करता है)। मुझे क्यूटी संसाधन प्रबंधन मिला जो मुझे चाहिए लेकिन मैं अकेले इस क्यूटी के आधार पर अपने ऐप पर उत्सुक नहीं हूं। मुझे यह टूल http://www.taniwha.com/~paul/res/ पर भी मिला .. लेकिन यह बहुत मंच विशिष्ट है।प्लेटफ़ॉर्म स्वतंत्र संसाधन प्रबंधन
उत्तर
यदि आप क्यूटी 4.5 का उपयोग कर रहे हैं, तो आप यह सुनिश्चित कर सकते हैं कि प्रोग्राम केवल क्यूटी के एक छोटे टुकड़े पर निर्भर है, जैसे libqtcore। QResource libqtcore का एक हिस्सा है।
यह इतना अच्छा विचार नहीं है। लिनक्स पर, उदाहरण के लिए, डेटा "$ डेटाडाइर" की उपनिर्देशिका में स्थापित होने की उम्मीद है, जिसे डिफ़ॉल्ट रूप से "$ prefix/share" कहा जाता है, जहां "$ prefix" अधिष्ठापन उपसर्ग है। मैक ओएस एक्स पर, संसाधनों को $ appbundle/सामग्री/संसाधनों में स्थापित होने की उम्मीद है, जहां $ appbundle ".app" में समाप्त होने वाले फ़ोल्डर का नाम है। विंडोज़ पर, निष्पादन योग्य के एक समूह में एक फ़ोल्डर में डेटा स्थापित करना एक असामान्य अभ्यास नहीं है। आप CMake बिल्ड सिस्टम का उपयोग करके और डिफ़ॉल्ट, पसंदीदा प्लेटफ़ॉर्म-विशिष्ट तरीके से इंस्टॉल/बंडल करने के लिए CPack पैकेजिंग सुविधाओं का उपयोग करके बेहतर हो सकते हैं।
हालांकि आपके संसाधनों को निष्पादन योग्य में स्वयं को बंडल करना अच्छा लगता है, यह वास्तव में एक खतरनाक विचार है ... उदाहरण के लिए, एम्बेडेड डेटा निष्पादन योग्य पृष्ठ में आवंटित किया जाएगा? यदि आप डेटा को ओवरराइट या संशोधित करने का प्रयास करते हैं तो क्या होगा? यदि आप रनटाइम पर डेटा को ट्विक या संशोधित करना चाहते हैं तो क्या होगा? के बारे में सोचने के लिए चीजें।
xxd
उपयोगिता का उपयोग सी स्रोत फ़ाइल बनाने के लिए किया जा सकता है, जिसमें आपके बाइनरी ब्लब्स को सरणी के रूप में शामिल किया गया है (-i
कमांड लाइन विकल्प के साथ)। आप उस वस्तु को संकलित कर सकते हैं जो आपके निष्पादन योग्य में जुड़ा हुआ है।
xxd
अधिकांश प्लेटफ़ॉर्म पर पोर्टेबल होना चाहिए।
आप अपने सामान्य बाइनरी में सभी प्रकार के डेटा को जोड़ सकते हैं। विंडोज और लिनक्स दोनों में काम करता है। आपको रनटाइम पर अपनी बाइनरी खोलनी होगी और वहां से डेटा पढ़ना होगा।
हालांकि, मुझे यह मानना है कि बाइनरी में डेटा एम्बेड करना एक अजीब विचार है। इस तरह के डेटा को एप्लिकेशन के साथ पैक की गई अलग फाइलों के रूप में शामिल करना आम बात है।
यह बहुत आशाजनक दिखता है: https://github.com/cyrilcode/embed-resource
CMake आधारित है और मंच स्वतंत्र।
- 1. concatenate पथ - प्लेटफ़ॉर्म स्वतंत्र - "/", "\"
- 2. प्लेटफार्म स्वतंत्र संसाधन प्रणाली (क्यूटी संसाधन प्रणाली की तरह)
- 3. सी ++/सीएलआई संसाधन प्रबंधन भ्रम
- 4. प्लेटफ़ॉर्म स्वतंत्र मेमोरी मैप किया गया [फ़ाइल] IO
- 5. जावा के लिए प्लेटफ़ॉर्म-स्वतंत्र/dev/null आउटपुट सिंक
- 6. मेवेन बिल्ड प्लेटफ़ॉर्म को स्वतंत्र बनाने के लिए कैसे?
- 7. हास्केल में प्लेटफ़ॉर्म-स्वतंत्र कोड कैसे लिखें (ghc)
- 8. जावा 7 स्वचालित संसाधन प्रबंधन जेडीबीसी (कोशिश-के-संसाधन विवरण)
- 9. स्ट्रिंग संसाधन फ़ाइल नामकरण योजनाएं और प्रबंधन
- 10. सॉफ़्टवेयर/प्लेटफ़ॉर्म साझा करने के लिए प्लेटफ़ॉर्म
- 11. क्रॉस प्लेटफ़ॉर्म गिट हुक
- 12. सक्रिय समाधान प्लेटफ़ॉर्म वीएस प्रोजेक्ट प्लेटफ़ॉर्म वीएस प्लेटफ़ॉर्म लक्ष्य
- 13. एक जेवीएम में पर्यावरण चर को पास करना, प्लेटफ़ॉर्म-स्वतंत्र तरीके से
- 14. मैं सीई ++ से .NET को एक प्लेटफ़ॉर्म-स्वतंत्र तरीके से यथासंभव
- 15. जावा में संसाधन प्रबंधन की तरह सी ++ संभव है
- 16. संसाधन प्रबंधन में सभी संसाधनों के माध्यम से लूप - सी #
- 17. "संसाधन शब्दकोश (डब्ल्यूपीएफ)" नामकरण सम्मेलन और प्रबंधन सुझाव
- 18. क्रॉस-प्लेटफ़ॉर्म सी/सी ++ विकास
- 19. एक्लिप्स प्लेटफ़ॉर्म
- 20. लक्ष्य प्लेटफ़ॉर्म
- 21. हास्केल प्लेटफ़ॉर्म
- 22. हास्केल प्लेटफ़ॉर्म
- 23. संसाधन संसाधन में .cs जोड़ना?
- 24. केंद्रीकृत विन्यास प्रबंधन
- 25. क्रॉस प्लेटफ़ॉर्म ध्वनि API
- 26. क्रॉस-प्लेटफ़ॉर्म एसएसओ - कहां से शुरू करें?
- 27. ओएस-स्वतंत्र एपीआई?
- 28. होस्टनाम-स्वतंत्र यसोड एप्लिकेशन
- 29. लोकेल-स्वतंत्र स्ट्रेट कार्यान्वयन
- 30. लिखना स्वतंत्र लक्षण
[जीसीसी का उपयोग कर निष्पादन योग्य में संसाधनों को एम्बेड करना] (https://stackoverflow.com/questions/4158900/embedding-resources-in-executable-using-gcc) – user