আমার কাছে আরকজিআইএস 10.0 এর জন্য একটি আরকি টুল স্ক্রিপ্ট রয়েছে যাতে দুটি প্রধান কার্যকরী বিভাগ রয়েছে। ব্যবহারকারী দ্বিতীয় বিভাগটি চালাবেন কিনা তা চয়ন করতে পারেন। যদি ব্যবহারকারী দ্বিতীয় বিভাগটি চালনা না করা চয়ন করে, আমি কেবল একটি ক্লিনআপ ফাংশন চালাতে চাই এবং সরঞ্জাম ফলাফলের উইন্ডোতে কোনও ত্রুটি বার্তা পোস্ট না করে একটি সিএস.এক্সিট (0) দিয়ে স্ক্রিপ্টটি প্রস্থান করতে চাই । আরকিপি স্ক্রিপ্ট থেকে বেরিয়ে আসার বিষয়ে জিআইএস-এসইতে দুটি প্রধান থ্রেড রয়েছে তবে এর সমাধানগুলি ত্রুটি বার্তাকে বিশেষভাবে চিহ্নিত করে না। কোডের সাধারণ কাঠামোটি নিম্নরূপ:
import sys
##import arcpy
def CleanUp():
print 'Cleaning up ...\n'
def finish():
CleanUp()
print 'Exiting ...'
sys.exit(0)
do_more = False #or True ... input from user
#Section 1: do some stuff
print 'Doing some stuff ...\n'
if not do_more:
finish()
#Section 2: do more stuff
print 'doing more stuff ...'
CleanUp()
যদি আমি এই কোডটি আর্কজিআইএস / আরকিপির বাইরে পাইথন ইন্টারপ্রেটারে চালিত করি, এটি আমার প্রত্যাশার মতো কাজ করে, কোনও ত্রুটি বার্তা না করে নিখরচায় উপস্থিত হয়; তবে, এই একই কাঠামোযুক্ত আমার আরকি স্ক্রিপ্টে, স্ক্রিপ্টটি প্রস্থান করে, তবে সরঞ্জামের ফলাফল উইন্ডোতে একটি সিস্টেমএক্সিট ত্রুটি বার্তা পোস্ট করা হয়েছে। আরকি টুল সরঞ্জামের স্ক্রিপ্টটি ব্যতিক্রম খেতে এবং সিস্টেমএক্সিট ত্রুটি বার্তাটি কবর দেওয়ার কোনও উপায় আছে?