שגיאה 70 בזמן ביצוע ב VB6: הרשאה נדחתה
הגדרה
שגיאה 70 בזמן הריצה היא בעיית אבטחה או הרשאות. ההודעה עצמה היא אחת מהודעות השגיאה המסתוריות ביותר שהמשתמש יכול לראות כאשר התוכנית מופעלת, שכן ההודעה היחידה שהיא מקבלת היא "הרשאה נדחתה". שגיאה זו יכולה להיות קשה לאבחן, במיוחד תוכניות גדולות, כי יש רכיבים רבים הפועלים באותו זמן. המסר עצמו מרמז על כך שלתוכנית אין הסמכות המתאימה לשימוש בתכונה שאינה משולבת בתוכנית.
סיבות
שגיאה זו מתרחשת בדרך כלל כאשר התוכנית מנסה לגשת לקבצים או כלים שאין להם את ההרשאות המתאימות, כגון כתיבת מסמכים מוגנים או רכיבי תוכנה של אובייקט ו- Component Model. עם זאת, ישנם מצבים רבים אחרים שבהם עלולה להופיע השגיאה, שרבים מהם קשורים לאובייקטים של COM ו- DCOM, כגון השבתת אפשרויות אלה, שימוש בהם כדי לגשת לתחומים שאינם מהימנים או כאשר אחד מהם גורם אירוע שהתוכנית שלך צריכה לטפל בו.
החלטה
פעמים רבות אתה רק לגלות על שגיאות ביצוע לאחר תוכנית מציבה אותם. בגלל שגיאה זו נגרמת בדרך כלל על ידי חוסר גישה לקבצים חיצוניים לתוכנית, מה שאתה צריך לדעת הוא מה פונקציות או רכיבים בתוך התוכנית נכשלים לגשת למשאבים אלה, ולכן, לגרום לבעיות. הדבר יעזור לך לציין אילו משאבים חסומים, כך שתוכל לאבחן ולפתור את הבעיה. במקרים רבים, באפשרותך לתקן את השגיאה על ידי הענקת גישת משתמש לכלים, כגון יישום שרת DCOM או Microsoft Transaction Service.
מניעה
בעת עיצוב תוכנית Visual Basic 6, באפשרותך לכתוב קוד ליירט ולשלוט בשגיאת זמן ריצה 70. השתמש ב- Visual Basic "On Error" בעת כתיבת קוד שעלול לגרום לשגיאה זו (או לכל סוג אחר). כאשר התוכנית מנסה לזרוק את השגיאה, את הקוד של הנהג שגיאה תופס אותו, אשר מאפשר לך להחליט איך אתה רוצה התוכנית שלך להגיב. דוגמה לכך היא להודיע למשתמשים בפירוט רב יותר מה השתבש או לאפשר את התוכנית להמשיך ללא הפסקה.