इस गाइड में, हम यह पता लगाएंगे कि किसी अन्य C निष्पादन योग्य के भीतर से एक निष्पादन योग्य फ़ाइल (.exe) कैसे खोलें।
समाधान में जाने से पहले, यह महत्वपूर्ण है सिस्टम() फ़ंक्शन को नियोजित करने के खतरों पर प्रकाश डालें। System() कई कमियां प्रदर्शित करता है:
का उपयोग करना सिस्टम(), हम CreateProcess() फ़ंक्शन का उपयोग करने की अनुशंसा करते हैं। यह फ़ंक्शन आपको एक स्वतंत्र प्रक्रिया बनाते हुए एक निष्पादन योग्य फ़ाइल लॉन्च करने की अनुमति देता है।
#includeVOID startup(LPCTSTR lpApplicationName) { STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory( &si, sizeof(si) ); si.cb = sizeof(si); ZeroMemory( &pi, sizeof(pi) ); CreateProcess( lpApplicationName, // executable path argv[1], // command line NULL, // process handle not inheritable NULL, // thread handle not inheritable FALSE, // no handle inheritance 0, // no creation flags NULL, // parent's environment block NULL, // parent's starting directory &si, // STARTUPINFO structure &pi // PROCESS_INFORMATION structure ); // Close process and thread handles. CloseHandle( pi.hProcess ); CloseHandle( pi.hThread ); }
आपको जिस त्रुटि का सामना करना पड़ा वह संभवतः इस तथ्य से उत्पन्न होती है कि आपने निष्पादन योग्य फ़ाइल का पूरा पथ निर्दिष्ट नहीं किया है। सुनिश्चित करें कि आप फ़ाइल नाम सहित पूरा पथ प्रदान करते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3