קריאה של Embedded resources

יום רביעי, יולי 27, 2016

  לאחרונה רציתי לתת ללקוח פרויקט מסוג Console Application, שבזמן ריצה הוא יעתיק מספר קבצים לתיקייה כלשהי במחשב (סוג של Installer, כאשר לא התחשק לי לכתוב פרויקט מסוג Setup), מצד שני לא ממש התחשק לי לשלוח ללקוח חמש קבצים ולהגיד לו להפעיל אחד מהם (בצורה כזו כבר יכולתי ישר לבקש ממנו להעתיק את הקבצים למקום הרלוונטי) על כן השתמשתי במנגנון של Embedded resources. הוספתי פיזית את הקבצים הרלוונטיים לפרויקט, כאשר במאפיינים שלהם בחרתי שהם יהיו מסוג Embedded resources (במאפיין Build Action). הושבתי אותם בתייקית בשם Matan   המשמעות היא שהקומפילציה של הפרויקט תיצור את קובץ ה – exe...
אין תגובות

Resources (resx) in asp.net mvc 3

יום רביעי, ספטמבר 12, 2012

הרבה פעמים נצטרך לעבוד עם קבצי resx באפליקציות asp.net mvc כדי לתמוך בשפות, בפוסט זה נראה כיצד ניתן לעבוד עם קבצים אלו בצורה בסיסית. ניתן להוריד את הדוגמא מכאן. ראשית אני מעדיף לייצר תיקייה לכל View עם הטקסטים שלה, ולכן מבנה הפרוייקט יראה בדרך כלל כך:     חשוב לזכור לשנות את ההגדרות של ה – resx שיהיה מוכר בכל האפליקציה בעזרת ההגדרה של Public   כעת...
אין תגובות

Text Resource in asp.net mvc

יום שלישי, מאי 8, 2012

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

Export Resource to Excel

יום שלישי, מרץ 22, 2011

  במידה ואתם עובדים עם קבצי resx כנראה שמתי שהוא אתם רוצים לשפוך החוצה את התוכן שלהם לקובץ שניתן לעריכה על ידי כאלו שהם לא מפתחים,   הפרוייקט שכתב ידידי היקר תומר קיסר מקבל שם של תיקייה ומוציא החוצה קובץ אקסל עם כל המידע שיש בקבצי ה - resource, כרגע זה תומך בעברית ובאנגלית במידה ותרצו עוד שפות עליכם להרחיב את ה - enum   enum Language {     en = 3,     he = 4 } המספרים הם המיקומים של העמודה בקובץ האקסל (שני הראשונים הם עבור שם הקובץ וה - key).   תוכלו להוריד אותו מכאן   (הפרוייקט עובד לי לוקלית אבל הוא לא מושלם ולא הושקע בו יותר מידי עבודה -...
תגיות: , ,
אין תגובות

New Resource Editor – development time as well as after deployment.

יום שלישי, יולי 14, 2009

  דרך נפוצה מאוד לשמור הודעות/תמונות וכד' היא ב - Resource file. הסבר על הנושא.   הבעייה הגדולה שלהם שמי שיכול לטפל ב - Resources זה רק המפתחים (או למי שיש Visual Studio) מה שגורם לכך שכשהבודק מוצא הודעת שיש בה שגיאה הוא צריך לעבור את כל התהליך של באג עד שימצא המפתח שיואיל בטובו לתקן את הודעת השגיאה, ואותו דבר יקרה עם החברה תביא אדם מיוחד לכתיבת ההודעות.   גרוע מכך - נניח שיצרנו גרסה ראשונית של המוצר - מנהלי המוצר טסים לחו"ל כדי להתקין שם את הגרסה - הכל בסדר עד שאחד מקוני המוצר אומר "בסוף המשפט צריך לכתוב נקודה" או משהו...
תגיות: , ,
4 תגובות

UnmanagedMemoryStream and PinnedBufferMemoryStream

יום ראשון, יולי 12, 2009

  יש class מעניין בשם UnmanagedMemoryStream, התפקיד שלו בחיים זה לספק גישה לבלוקים בזיכרון קוד שאינו מנוהל. בדוגמא ב - MSDN יש את דוגמת הקוד הבאה: (שם זה מופיע עם הערות)   unsafe {     byte message = UnicodeEncoding.Unicode.GetBytes("Here is some data.");     IntPtr memIntPtr = Marshal.AllocHGlobal(message.Length);     byte* memBytePtr = (byte*)memIntPtr.ToPointer();       UnmanagedMemoryStream writeStream = new UnmanagedMemoryStream(memBytePtr, message.Length,                                                                     message.Length, FileAccess.Write);     writeStream.Write(message, 0, message.Length);     writeStream.Close();       UnmanagedMemoryStream readStream = new UnmanagedMemoryStream(memBytePtr, message.Length,                                                                 message.Length, FileAccess.Read);     byte...
תגיות: , , ,
3 תגובות

Resource and Culture and UICulture (והשמה אוטומטית של מידע)

יום שבת, מאי 9, 2009

  קבצי resource הם דרך נהדרת לשמור את ההודעות והטקסט של האפליקצייה לפי ה culture,   הדבר שמעצבן אותי כמפתח, שאני צריך בכל פעם לכתוב את הקוד של ההשמה מתוך קובץ ה resource על ה label המתאים.   אז לפני שאני אראה את הפיתרון שאני משתמש, נעשה מעבר מהיר על הנושא. לטובת אלו שלא יודעים מה זה resource ומה זה culture.     נניח שיש לי אפליקצייה שאני רוצה שתהיה גם באנגלית וגם בעברית, נתעלם לרגע מהעובדה שכיון הכתיבה הוא הפוך, ונתמקד בזה שהטקסט צריך להיות בשתי השפות.   איך נעשה את זה ?   קליק ימין עם העכבר על הפרויקט שלנו, נבחר ב add new item, ונבחר ב  Resource         אני...

Resource in javascript using HttpHandler

יום שבת, מרץ 21, 2009

  אז כתבנו Resource file, והכנסנו לתוכו את כל ההודעות שלנו,   ואפילו הגדרנו אותו כ public, כדי שנוכל לגשת אליו מכל הפרויקטים,   אבל מה אנחנו עושים, עם ההודעות שאנחנו רוצים להציג ב JavaScript,     אז הנה הפיתרון:   בפרויקט שאפשר להוריד מכאן:   יש פרויקט שנקרא Common, שבו יש את ה resource file,   הוספנו בפרויקט ה web, קובץ מסוג HttpHandler,   שקורא את כל המאפיינים של ה Resource, ומחזיר מערך JS, עם כל הערכים.   הנה הקוד:         1 public void ProcessRequest(HttpContext context)     2 {     3     context.Response.ContentType = "application/js";     4      5     // Get the type of the resource class     6     Type messagesType = typeof(Messages);     7      8     // Get the all properties taht is public and static     9     PropertyInfo properties = messagesType.GetProperties(    10        ...
אין תגובות