דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ארכיון code613m
  4. מאקרו של ויזואל סטודיו

מאקרו של ויזואל סטודיו

מתוזמן נעוץ נעול הועבר ארכיון code613m
11 פוסטים 4 כותבים 673 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • רחמיםר מנותק
    רחמיםר מנותק
    רחמים מורחק
    כתב ב נערך לאחרונה על ידי
    #1

    כמה שחפרתי לא מצאתי איך אני יכל לשנות ע''י מאקרו שמות של משתנים שנמצאים בתוך פונקציות, האם למישהו יש מושג?
    תודה רבה.

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

    Sub IsCodeTypeExample()
    
        ' NOTE: This example requires a reference to the System.Text 
        '       namespace.
    
        ' Before running this example, open a code document from a project.
        Dim item As ProjectItem = dte.ActiveDocument.ProjectItem
        Dim sb As New StringBuilder
    
        RecurseElements(item.FileCodeModel.CodeElements, 0, sb)
    
        MsgBox(item.Name & " contains the following elements:" & vbCrLf & _
            vbCrLf & sb.ToString())
    
    End Sub
    
    Sub RecurseElements(ByVal elems As CodeElements, _
        ByVal level As Integer, ByVal sb As StringBuilder)
    
        Dim elem As CodeElement
        For Each elem In elems
            ' Add element to the list of names.
            sb.Append(" "c, level * 8)
            sb.Append(elem.Name & " [" & elem.Kind.ToString() & "]" & _
                vbCrLf)
    
            ' Call this function recursively if element has children.
            If elem.Kind = vsCMElement.vsCMElementNamespace Then
                RecurseElements(CType(elem, CodeNamespace).Members, _
                    level + 1, sb)
            ElseIf elem.IsCodeType Then
                RecurseElements(CType(elem, CodeType).Members, _
                    level + 1, sb)
            End If
        Next
    End Sub
    

    פורסם במקור בפורום CODE613 ב30/07/2013 16:28 (+03:00)

    תגובה 1 תגובה אחרונה
    0
    • רחמיםר מנותק
      רחמיםר מנותק
      רחמים מורחק
      כתב ב נערך לאחרונה על ידי
      #2

      שלוש עשרה צפיות [זה כמעט כל הפורום ... <!-- s:-) --><img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":-)" title="מחייך" /><!-- s:-) --> ] ואף אחד לא יודע?

      פורסם במקור בפורום CODE613 ב01/08/2013 19:53 (+03:00)

      תגובה 1 תגובה אחרונה
      0
      • א מנותק
        א מנותק
        ארכיטקט
        כתב ב נערך לאחרונה על ידי
        #3

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

        פורסם במקור בפורום CODE613 ב02/08/2013 02:20 (+03:00)

        אידיאולוגיות גדולות נכנסות למטחנה של עולם המעשה ויוצאות ממנו בפירורים (ווינסטון צ'רצ'יל, סתם סתם, זה שלי)

        תגובה 1 תגובה אחרונה
        0
        • רחמיםר מנותק
          רחמיםר מנותק
          רחמים מורחק
          כתב ב נערך לאחרונה על ידי
          #4

          כן מדובר על VBA אבל המאקרו הזה נועד לעריכת הקוד מקור של כל השפות ולא לעריכה של הDLL או ה EXE המקופלים, כך שזה לא משנה באיזו שפה אתה כותב.

          פורסם במקור בפורום CODE613 ב02/08/2013 08:23 (+03:00)

          תגובה 1 תגובה אחרונה
          0
          • א מנותק
            א מנותק
            ארכיטקט
            כתב ב נערך לאחרונה על ידי
            #5

            אז תקרא שורה שורה בקובץ הטקסט, ותלכוד את המשתנים כל שפה לפי כלליה ופרטותיה ודקדוקיה והסודות הגדולים היוצאים ממנה........ להגיד שיש משהו מוכן? הלואי אם כן אז זכית בלוטו.

            פורסם במקור בפורום CODE613 ב02/08/2013 12:38 (+03:00)

            אידיאולוגיות גדולות נכנסות למטחנה של עולם המעשה ויוצאות ממנו בפירורים (ווינסטון צ'רצ'יל, סתם סתם, זה שלי)

            תגובה 1 תגובה אחרונה
            0
            • רחמיםר מנותק
              רחמיםר מנותק
              רחמים מורחק
              כתב ב נערך לאחרונה על ידי
              #6

              @ארכיטקט

              אז תקרא שורה שורה בקובץ הטקסט, ותלכוד את המשתנים כל שפה לפי כלליה ופרטותיה ודקדוקיה והסודות הגדולים היוצאים ממנה........ להגיד שיש משהו מוכן? הלואי אם כן אז זכית בלוטו.

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

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

              פורסם במקור בפורום CODE613 ב02/08/2013 13:14 (+03:00)

              תגובה 1 תגובה אחרונה
              0
              • dovidD מנותק
                dovidD מנותק
                dovid ניהול
                כתב ב נערך לאחרונה על ידי
                #7

                א. זה לא VBA, זה VB.NET
                ב. מאוד הגיוני שזה יקרא מבנים פנימיים (משתנים לולאות תנאים וכו'), וידנית אכן זה אפשרי, אבל עד כה לא מצאתי איך עושים.
                ג. בקובץ VB.NET קל יחסית למצוא משתנים, אבל בקובץ C# זה קשה מאוד! כך נראה לי.
                ג. הצפיות כוללות גם משתמשים לא רשומים.

                פורסם במקור בפורום CODE613 ב02/08/2013 13:32 (+03:00)

                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                תגובה 1 תגובה אחרונה
                0
                • dovidD מנותק
                  dovidD מנותק
                  dovid ניהול
                  כתב ב נערך לאחרונה על ידי
                  #8

                  הנה ייאוש רשמי:
                  http://social.msdn.microsoft.com/Forums/vstudio/en-US/b7189874-ff1d-4d51-9bd2-649300fc1bad/how-can-i-access-the-code-elements-inside-a-function-definition-in-visual-studio-addin.

                  שים לב שפרמטרים אתה כן יכול להשיג, אם זה מעניין אותך.

                  פורסם במקור בפורום CODE613 ב02/08/2013 15:32 (+03:00)

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                  תגובה 1 תגובה אחרונה
                  0
                  • רחמיםר מנותק
                    רחמיםר מנותק
                    רחמים מורחק
                    כתב ב נערך לאחרונה על ידי
                    #9

                    @דוד ל.ט.

                    ג. בקובץ VB.NET קל יחסית למצוא משתנים, אבל בקובץ C# זה קשה מאוד! כך נראה לי.

                    בC# עדיין לא ניסיתי אבל ב VB זה אכן קל.

                    פורסם במקור בפורום CODE613 ב02/08/2013 18:05 (+03:00)

                    תגובה 1 תגובה אחרונה
                    0
                    • A מנותק
                      A מנותק
                      ayalaleora
                      כתב ב נערך לאחרונה על ידי
                      #10

                      היי. למה בכלל אתה צריך לדעת משתנים פנימיים??? מה זה משנה מה השם שלהם. וגם אין לך מושג איך הוא מקפל את זה בפנים. זה משנה על איזה פלטפורמה זה עובד, שפת C# פעם היתה יכולה גם לעבוד על JAVA ולא יודע מה עוד. ויכול להיות שהוא בפנים לא שומר בכלל את שמות המשתנים הפנימיים כיון שאינם צורכים זיכרון. אז למה שיתן לך את זה.
                      והסיבה שאת שאר הדברים הוא נותן זה כי זה נועד לשימוש דינמי, שהשתכלל מאד בNET 4. שאתה אמור לדעת את שם הפונקצייה ואת חתימתה ואיזה פרמטרים היא דורשת, למצב לדוגמא שיש לך פונקצייה שמטפלת באופן גלובלי באובייקטים שאין להם אותו ממשק אינטרפייס אז אפשר להחיות אותם על ידי אינסטנס עם השם של המתודה או האובייקט וכו'.

                      ולמעשה למה אתה צריך את זה?

                      פורסם במקור בפורום CODE613 ב22/08/2013 01:12 (+03:00)

                      תגובה 1 תגובה אחרונה
                      0
                      • רחמיםר מנותק
                        רחמיםר מנותק
                        רחמים מורחק
                        כתב ב נערך לאחרונה על ידי
                        #11

                        @ayalaleora

                        ולמעשה למה אתה צריך את זה?

                        בשביל לעשות ערפול לקוד.

                        פורסם במקור בפורום CODE613 ב22/08/2013 08:44 (+03:00)

                        תגובה 1 תגובה אחרונה
                        0

                        בא תתחבר לדף היומי!
                        • התחברות

                        • אין לך חשבון עדיין? הרשמה

                        • התחברו או הירשמו כדי לחפש.
                        • פוסט ראשון
                          פוסט אחרון
                        0
                        • דף הבית
                        • קטגוריות
                        • פוסטים אחרונים
                        • משתמשים
                        • חיפוש
                        • חוקי הפורום