द्वारा निष्पादित हैंडल निकास आदेश मेरे पास एक छोटा खोल एप्लिकेशन है जो Tcl कोड के कुछ सेट निष्पादित करने के लिए Tcl एम्बेड करता है। Tcl_CreateInterp का उपयोग कर टीसीएल दुभाषिया शुरू किया गया है। सब कुछ बहुत सरल है:एम्बेडेड टीसीएल रनटाइम
- उपयोगकर्ता प्रकार Tcl आदेश
- आदेश मूल्यांकन के लिए Tcl_Eval के लिए पारित हो जाता है
- दोहराने
लेकिन अगर एक उपयोगकर्ता प्रकार 'exit', जिसमें एक मान्य Tcl है आदेश, पूरी बात - टीसीएल दुभाषिया और मेरा खोल आवेदन - स्वचालित रूप से बाहर निकलें।
प्रश्न: क्या कोई तरीका है कि मैं टीसीएल दुभाषिया से आने वाले इस निकास संकेत को पकड़ सकता हूं। मैं वास्तव में हर उपयोगकर्ता कमांड की जांच नहीं करना चाहता हूं। मैंने Tcl_CreateExitHandler की कोशिश की, लेकिन यह काम नहीं किया।
बहुत बहुत धन्यवाद।
शीर्षक और "tcllib" को हटाए गए संदर्भों को फिक्स्ड किया गया है क्योंकि एक मानक लाइब्रेरी * के लिए * टीसीएल [आमतौर पर उस नाम से जाना जाता है] (http://tcllib.sourceforge.net/)। आप वास्तव में संदर्भित करते हैं कि आपके प्रोग्राम में टीसीएल रनटाइम एम्बेड करना है। – kostix
'Tcl_CreateExitHandler' बाहर निकलने और संसाधनों को जारी करने के लिए है (उदा।, डेटाबेस कनेक्शन) जो अन्यथा घबराहट से घूमते हैं। यह होने से बाहर निकलने से नहीं रोक सकता है। –
यह वास्तव में वही है जो मैं करना चाहता हूं - बाहर निकलने पर संसाधनों को छोड़ दें। इस मामले में 'Tcl_CreateExitHandler' क्यों काम नहीं करेगा? – ilya1725