מהו מפתח רישום CLSID?

ה-CLSID או ה-Class Identifier הוא מחרוזת של סמלים אלפאנומריים (הן מספרים ותווי אלפבית) המשמשים לייצוג מופע ספציפי של דגם Component Object או תוכנית מבוססת COM. היא מאפשרת למערכות הפעלה ולתוכנות, במיוחד עבור Windows, לזהות ולגשת לרכיבי תוכנה מבלי לזהות אותם בשמותיהם. למרות שמיקרוסופט הפסיקה את השימוש ב-COM לטובת תשתית .NET, ה-COM נשאר בשימוש כמרכיב חשוב עבור תוכניות רבות בשימוש נפוץ ואין לה תוכניות להפסיק את השימוש בהן.

דוגמאות לאובייקטים המשתמשים ב-COM וב-CLSID תואם כוללות ActiveX, ספריית המחשב שלי ותפריט התחל של Windows. CLSID טיפוסי ברישום Windows שלך יכול להיראות כך:

המפגש הסביר ביותר שלך עם ה-CLSID הוא כאשר אתר אינטרנט מבקש ממך לעדכן את ActiveX או תוכנית אחרת. הדפדפן שלך מזהה את גרסת התוכנה שלך על ידי בדיקת ה-CLSID שלה, ומשדר מידע זה לאתר מבלי לפגוע במחשב שלך.

עם זאת, עדכוני מדיה מזויפים משמשים לעתים קרובות להפצת תוכנות זדוניות ואיומי מחשב אחרים, ועליך להימנע מהורדת עדכונים מאתרים שאינך סומך עליהם באופן מרומז.

כאשר ערך CLSID טוב משתבש

אם ה-CLSID פגום, המחשב שלך עלול להיתקל בבעיות הקשורות לתוכנית שאליה מקושר ה-CLSID; בעיה נפוצה אחת היא נזק ל-CLSID שגורם לכך שהתוכנה לא יכולה לאמת את הגרסה שלה ולעדכן את עצמה. כפתרון קל ליישום, הסרת התקנה והתקנה מחדש של התוכנה שלך פותרת בדרך כלל בעיה זו.

הבעיה הנפוצה ביותר הקשורה לערך CLSID של הרישום היא כישלון של תוכנית למחוק את ה-CLSID שלה מהרישום כאשר שאר התוכנית מוסרת. למרות שזהו תרגול תכנות לקוי שמבלבל את הרישום של המחשב עם ערכי טקסט חסרי משמעות, רשומת CLSID שאינה בשימוש צפויה להזיק למחשב שלך. עם זאת, כמה מנקי רישום ותוכניות אחרות לתחזוקת מערכת מתמחים בהסרת 'זבל' מבוסס CLSID זה. בנסיבות קיצוניות מאוד, כמו מחשב עם משאבי מערכת נמוכים, רישום עם יותר מדי ערכי CLSID שאינם בשימוש עלול לגרום לבעיות ביצועים.

אם אתה מעוניין לתקן ערכי רישום CLSID באופן ידני, יש לנקוט רמה גבוהה של זהירות. שינויים ברישום שלך עלולים להזיק למערכת ההפעלה שלך בדרכים רבות, בעיקר על ידי כך שהיא לא מצליחה לזהות רכיבים ותוכניות קריטיות. לא משנה אם אתה מעוניין לבצע שינויים בערכי ה-CLSID של המחשב שלך או לא, מומלץ לבצע גיבוי של רישום Windows דרך נקודת שחזור מערכת או שיטה אחרת בכל המקרים.

ה-CLSID הנעלם

למרות שה-CLSID בדרך כלל הוא רשומת טקסט קבועה ברישום שלך - לפחות עד שתסיר את ההתקנה של התוכנית שהיא מקושרת אליה - גם תיקיות וקבצים זמניים עשויים להציג ערכי CLSID בשמם. זה נגרם לעתים קרובות על ידי מתקיני תוכניות שמפרקים קבצים לשימוש להתקנה לפני הסרתם. רוב הקבצים והתיקיות הללו אמורים למחוק את עצמם באופן אוטומטי לאחר השלמת ההתקנה. במקרים של קידוד לקוי או התקנה מופרעת, ייתכן שיהיה עליך למחוק אובייקטים אלה בעצמך, למרות שהם לא אמורים להזיק למחשב שלך.

לא כל התוכניות המשתמשות ב-CLSID נאלצות לכתוב את ערכי ה-CLSID שלהן ברישום Windows שלך. רכיבי COM RegFree או Registration Free מסוגלים לאחסן את ערכי ה-CLSID שלהם בקבצי EXE משלהם או בקובצי XML נפרדים. יש לזה יתרונות מסוימים, כמו לאפשר לתוכנית להיות מותקנת מספר פעמים בכמה גרסאות שונות. עם זאת, תמיכת RegFree COM מוגבלת יותר ולפעמים (במקרים של תוכניות כלל מערכתיות כמו DirectX) אינה זמינה לחלוטין.

ההבדל בין ה-COM של CLSID לשאר יקום ה-COM

ממשק ה-COM עם ה-CLSID הוא Component Object Model, שיטת ממשק המשתמשת בפילוסופיית התכנות מונחה העצמים (או OOP). אין לו קשר ישיר עם סיומת דומיין האינטרנט COM, המסמלת דומיין 'מסחרי' ברמה העליונה.

כמו כן, רכיבי ה-COM של CLSID אינם קשורים לקבצי COM, שהם תת-סוג של קובץ הפעלה או EXE. למרות שחלק מרכיבי Windows ותוכניות אחרות משתמשות ב-.COM, פורמט קובץ מיושן זה דורש אמולציית MS-DOS שאינה כלולה (כברירת מחדל) במערכת הפעלה של Windows 64 סיביות.

המקום של CLSID בתעשיית תוכנות זדוניות

ערכי CLSID עשויים לשמש להפעלת תוכניות מזיקות, כמו גם בטוחות. ערכות שורש, סוסים טרויאניים, אובייקטי עוזר דפדפן זדוניים וסוגים אחרים של תוכנות זדוניות, כולם עשויים לעשות שימוש במערכת ה-CLSID כדי להפעיל את עצמם באופן אוטומטי או כאשר תנאים מסוימים מופעלים. רוב התוכניות המוסמכות נגד תוכנות זדוניות יזהו וימחקו ערכי CLSID זדוניים יחד עם התוכנות הזדוניות המשויכות אליהן. עם זאת, כמו ערכי CLSID רגילים, ערכי תוכנות זדוניות של CLSID שלא נמחקו עבור תוכניות שהוסרו אינן מסוגלות לגרום נזק למחשב שלך.

ידוע גם שתוכניות זדוניות משתמשות בערכי CLSID כדי לבצע שיחות לתוכניות אחרות (כגון Internet Explorer). תוכניות אלה עשויות להציג או לא להציג סימנים גלויים של פתיחה, אם כי, ברוב המקרים, אתה אמור להיות מסוגל לזהות את תהליך הזיכרון של התוכנית הפתוחה באמצעות מנהל המשימות וכלי עזר דומים. התקפות כאלה יכולות לשמש לביצוע התקפות מקוונות שונות ללא ידיעת משתמש המחשב. בעוד שידע של CLSID מיותר לשימוש מזדמן במחשב, מודעות פעילה ליכולות ולמגבלות שלו יכולה לסייע בפתרון שגיאות הקשורות לתוכנה ולרישום במינימום תסכול.

טוען...