עצלנות של מפתחים ואבטחת מידע – והפעם כיצד לעקוף את הבדיקה שטלריק עושים האם קניתם את המוצר (2)

30 במרץ 2012

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

שינוי ערכים של App Settings מתוך הקוד

29 במרץ 2012

  (הסבר על AppSettings)   כשעובדים עם מנגנון ה - Settings של net, ניתן בקלות לשנות את הערכים שלהם מתוך הקוד, אבל במידה שנשתמש במנגנון ה - appSettings ונרצה מתוך הקוד לשנות את הערך השמור בהם, נצטרך לעבוד טיפה יותר קשה - הקוד הבא מתאים לא רק ל - appSettings אלא לכל מקטע שנרצה לשנות מתוך הקוד.     Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); config.AppSettings.Settings.Value = value; config.Save(ConfigurationSaveMode.Modified); ConfigurationManager.RefreshSection("appSettings");     כמובן שניתן להשתמש גם בפונקציות אחרות של ה - ConfigurationManager כדי לפתוח קבצי קונפיג של אפליקצייה אחרת.   פשוט וקל.
תגיות: ,
תגובה אחת

List Control Editor

15 במרץ 2012

  בהמשך לפוסט הקודם (חובה לקרוא לפני הפוסט הנוכחי) ננסה לשנות את ה - List Control Editor כך שיתאים לכמה Controls ולא רק ל - ListBox.   (את הקוד המלא ניתן להוריד כאן)   המחלקה ListBoxItem תהפוך ל - ListControlItem ותראה כך:   public class ListControlItem {     public string Name { get; set; }     public string Value { get; set; }       public override string ToString()     {         if (DesignMode)         {             if (Name == null && Value == null)                 return "ListBoxItem {}";               return string.Format("{0}, {1}", Name, Value);         }           if (Name == null)             return string.Empty;           return Name;    ...
תגיות: ,
אין תגובות

ValueListBox – List Control Editor

14 במרץ 2012

  (הקוד המלא להורדה)    אחד הפקדים ב - Windows Forms Application הוא - ListBox, הפקד יכול לקבל רשימה של אובייקטים ולהציג את הערך שחוזר מתוך ה - ToString.   יש לפקד רק בעייה אחת, מקוד ניתן לתת ל - ListBox כל אובייקט שנרצה, אבל ב - Design Time ניתן לתת לו רק מערך של מחרוזות (אלא אם כן נעבוד עם Binding), כשנלחץ על הלחצן של עריכת ה - Items נקבל את החלון הבא:           כמובן שהחלון הזה אינו מאפשר לתת ערכים שהם Key/Value.   לכן הייתי צריך לשנות קצת את המימוש של הפקד.   הסיבה שהחלון הזה קופץ בזמן לחיצה על ה - Items של הפקד, היא שכך נראה...
תגיות: ,
3 תגובות

Cannot truncate table 'TableName' because it is being referenced by a FOREIGN KEY constraint.

6 במרץ 2012

  כשרוצים למחוק מידע מטבלאות, לעיתים רוצים ממש לנקות את הטבלה, ובמידה ויש עמודת מספר רץ (נניח Id שמוגדר כ - Identity) נרצה לא רק למחוק את השורות, אלא גם לאפס את המספר הרץ כך שהמספור יתחיל מההתחלה.   הצורה הפשוטה היא להשתמש ב - truncate במקום delete, כך:   truncate table Color   הבעייה תהיה, במידה ויש קשר בין טבלה זו לטבלאות אחרות נקבל את הודעת השגיאה הבאה: Cannot truncate table 'Color' because it is being referenced by a FOREIGN KEY constraint.     כדי לאפס בכל זאת את המספר הרץ, נכתוב את הקוד הבא   delete from Color DBCC CHECKIDENT (Color, RESEED, 0)   כעת המידע ימחק, והשורה הבאה שתיכנס תהיה עם...
תגיות: ,
תגובה אחת

Install SMTP server in IIS (on Windows Server 2008) – Setp By Step

2 במרץ 2012

  בפוסט הזה כתבתי כיצד לשלוח מייל מקוד (אפילו התחכמתי שם ועשיתי את זה מ - JS), מסתבר שלהתקין SMTP על השרת הוא גם סרט לא קטן למי שלא מכיר את התהליך - שרפתי כמה שעות טובות על נסיונות ההגדרה של השרת, ופוסט זה נועד לחסוך את השעות הלוו למי שצריך לעבור את התהליך.     השלבים שצריך לעשות כדי לאפשר שליחת מיילים. 1. התקנה של IIS. 2. התקנה של SMTP. 3. הפעלת ה - SMTP Service. 4. קינפוג של ה - SMTP Service. 5. פתיחת פורט ה - SMTP בחומת האש.     אחד הדברים השונים ב - Windows Server הוא חלוקה של Roles ו - Feature. כדי להתקין IIS...
תגיות: , , ,
תגובה אחת