2009-05-20 7 views
6

मुझे पता है कि SetFileAttributes फ़ंक्शन का उपयोग कर Windows पर फ़ाइल विशेषताएँ कैसे सेट करें। लेकिन मुझे आश्चर्य है कि मूल सी/सी ++ फ़ंक्शन क्या कर सकता है?सी/सी ++ देशी कार्यों का उपयोग करके फ़ाइल विशेषताओं को सेट करना

+0

"मूल सी/सी ++ फ़ंक्शन" शायद वह नहीं है जिसे आप पूछ रहे हैं। SetFileAttributes() एक देशी सी फ़ंक्शन है। मुझे लगता है कि आप एक पोर्टेबल और मानकीकृत समारोह की तलाश में हैं। – JesperE

+0

पर्ल या पायथन जैसे स्क्रिप्टिंग भाषाओं के लिए एक प्रेरणा यह है कि वे उन चीजों के लिए क्रॉस-प्लेटफ़ॉर्म API प्रदान करने का सर्वोत्तम प्रयास करते हैं जो सार्वभौमिक रूप से क्रॉस-प्लेटफ़ॉर्म नहीं हैं। –

उत्तर

11

कोई नहीं है। न तो मानक सी ++ और न ही मानक सी ऐसे कार्यों को निर्दिष्ट करते हैं।

इसका कारण यह है कि विभिन्न ऑपरेटिंग सिस्टमों में इस क्षेत्र में बहुत कम आम काम है। उदाहरण के लिए, यूनिक्स-जैसे ऑपरेटिंग सिस्टम में "निष्पादन योग्य" विशेषता होती है, जबकि विंडोज़ जैसे ऑपरेटिंग सिस्टम निष्पादन योग्यता निर्धारित करने के लिए फ़ाइल एक्सटेंशन का उपयोग करते हैं।

4

खिड़कियों पर एक _chmod समारोह जो यूनिक्स पर chmod समारोह के व्यवहार की नकल करता है।

4

यदि "मूल" द्वारा, तो आप सी मानक पुस्तकालय में हैं, तो नहीं। फ़ाइल "विशेषताएँ" एक ओएस विशिष्ट एक्सटेंशन हैं, इसलिए किसी भी मानक फ़ंक्शन सेट में दिखाई नहीं देगी। यदि हम POSIX पर हमारे प्रेषण को विस्तारित करने के इच्छुक हैं, तो फ़ेचमोड जैसे फ़ंक्शन हैं, लेकिन यह केवल यूनिक्स शैली फ़ाइल मोड को संभालता है, जो विंडोज फ़ाइल विशेषताओं के रूप में अभिव्यक्तिपूर्ण नहीं हैं।

सामान्य रूप से, आप "ओएस-विशिष्ट चीज़ करने के लिए एक मानक कार्य/ऑब्जेक्ट है" फॉर्म के किसी भी प्रश्न का उत्तर दे सकते हैं, "शायद, यदि मानक केवल ओएस के लिए मौजूद है। अन्यथा, नहीं"।

संबंधित मुद्दे