मैंने विंडोज 7 पर सी ++ क्यूएन क्यूटी निर्माता (क्यूएमएल) में एक क्यूटी त्वरित डेस्कटॉप एप्लिकेशन लिखा है। अब मुझे इसे तैनात करना है, और मुझे qml फ़ाइलों और छवियों को छिपाने की आवश्यकता है (मतलब: उन्हें संसाधनों और आदि में रखने के लिए)सी ++ और क्यूएमएल एप्लिकेशन में qrc का उपयोग कैसे करें?
मैंने पढ़ा है कि ऐसा करने का एक शानदार तरीका है। qrc फ़ाइलें। मैं उन फ़ाइलों के बारे में दस्तावेज़ पढ़ा है, और अपने आवेदन है, जो इस तरह दिखता है के लिए एक बनाया:
:<RCC>
<qresource prefix="/">
<file>qml/GenericHostApplicationQML/myMain.qml</file>
<file>qml/GenericHostApplicationQML/content/PressAndHoldButton.qml</file>
<file>qml/GenericHostApplicationQML/content/TextButton.qml</file>
<file>qml/GenericHostApplicationQML/content/pics/advancedsettings.png</file>
<file>qml/GenericHostApplicationQML/content/pics/cnruninstall.png</file>
<file>qml/GenericHostApplicationQML/content/pics/dialog_cancel.png</file>
<file>qml/GenericHostApplicationQML/content/pics/folder_explore.png</file>
<file>qml/GenericHostApplicationQML/content/pics/gnome_session_switch.png</file>
<file>qml/GenericHostApplicationQML/content/pics/mail2_send.png</file>
<file>qml/GenericHostApplicationQML/content/pics/Picture1.png</file>
<file>qml/GenericHostApplicationQML/content/pics/Picture2.png</file>
</qresource>
main.cpp में, मैं Main.qml की तरह फ़ाइल लोड कर रहा हूँ
view.setSource(QUrl(":/qml/GenericHostApplicationQML/myMain.qml"));//I added the ":/"
लेकिन मैं कर दिया है:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QDeclarativeView view;
view.setSource(QUrl::fromLocalFile("qml/GenericHostApplicationQML/myMain.qml"));
view.show();
return app.exec();
}
मैं की तरह Resources.qrc से myMain.qml फ़ाइल को पढ़ने की कोशिश की यह त्रुटि आई:
file:///qml/GenericHostApplicationQML/myMain.qml: File not found
और जब मैं इस की कोशिश की:
मैं इस हो रही है:
file:///C:/Users/ayalafre/Desktop/ghaQML/GenericHostApplicationQML-build-desktop-Qt_4_7_4_for_Desktop_-_MinGW_4_4__Qt_SDK__Release/:/qml/GenericHostApplicationQML/myMain.qml: File not found
ऐसा लगता है कि मेरी क्यूटी क्या से कोई लेना देना नहीं जानता है लगता है : ": /"।
मैं में .qrc फ़ाइल का उपयोग करने के लिए है:
- myMain.qml फ़ाइल
- लोड हो रहा है myMain.qml में फ़ाइलों qml को
- मेरी qml फाइलों में छवियों का उपयोग आयात का उपयोग करना
क्या आप मुझे समझा सकते हैं कि क्या गलत है ?? और सी ++ और qml दोनों में .qrc का उपयोग करने के लिए मुझे क्या करना है?
धन्यवाद एक बहुत :)
मुझे यकीन है कि वास्तव में QML कोड को छिपाने का कोई तरीका नहीं है, भले ही आप संसाधन फ़ाइल का उपयोग करें, वह कोड अभी भी किसी भी के लिए दृश्यमान है ne जो आपके निष्पादन योग्य का निरीक्षण करता है, यानी यह किसी भी तरह से संकलित, एन्क्रिप्टेड या बाइनरी कोड में परिवर्तित नहीं होता है। – johnbakers