मैं जो एक साझा स्मृति क्षेत्र CreateFileMapping
के साथ परिभाषित है एक आवेदन पत्र है और मैं किसी अन्य अनुप्रयोग से कि स्मृति को पढ़ने के लिए कोशिश कर रहा हूँ।CreateFileMapping वापसी क्यों "फ़ाइल पहले से मौजूद है"?
मैं इस कोशिश की:
handle := CreateFileMapping($FFFFFFFF, nil, PAGE_READWRITE,
0,$3200, pchar('FileMappingZone'));
लेकिन मैं मिलता है:
जब कि फ़ाइल पहले से मौजूद
क्या समस्या हो सकती है एक फ़ाइल बनाने नहीं कर सकते?
अपने आवरण के आसपास WINAPI कॉल जाँच 'GetLastError' बिना शर्त प्रत्येक कॉल के बाद करता है? 'CreateFileMapping' के लिए' EROR_ALREADY_EXISTS' 'लौटने के लिए निम्नलिखित' GetLastError' 'के लिए वैध हैंडल ** और ** वापस करने के लिए अपेक्षित है (जो वास्तव में एक त्रुटि नहीं है यदि आप अपेक्षा करते हैं)। –
मैं सिर्फ CreateFileMapping पर कॉल के बाद GetLastError कहते हैं, अगर मैं उस फ़ाइल मानचित्रण पैदा कर दी है इससे पहले कि यह कहना है अनुप्रयोग बंद: @ opc0de कि ऐसा मत करो ऑपरेशन succesefully – opc0de
पूरा किया। जब दस्तावेज ऐसा करने के लिए कहता है तो केवल 'GetLastError' को कॉल करें। और वह तब होता है जब 'CreateFileMapping' 'NULL' देता है। –