הטרגת תכנית חיצונית מפריוריטי – קבלה והזנת פרמטרים

פורומים אפיון ופיתוח פריוריטי הטרגת תכנית חיצונית מפריוריטי – קבלה והזנת פרמטרים

  • Post
    snoof123
    משתתף
    שלום,
    האם מישהו יודע איך אני מזין קלטים לתכנית C שאני בניתי ומטריג אותה חיצונית מהפריוריטי?
    (לגבי ההטרגה ראיתי פרק בSDK שמתייחס לזה, אבל רציתי לשאול האם מישהו מפה עשה את זה כדי לשתף אותי בניסיון שלו לפני שאני ניגש לתהליך.)

    תודה 🙂
    אלעד

מוצגות 10 תגובות – 1 עד 10 (מתוך 10 סה״כ)
  • Replies
    אלמוני
    אורח
    האם אתה מתכוון למשהו כזה
    EXECUTE WINAPP 'X:\SYSTEM', '-w','SIFILTER220715.EXE', :$.NAM;
    הפרמטר NAM מועבר אל התכנית החיצונית SIFILTER, וזו מקבלת את הפרמטר כ-COMMAND LINE PARAMETER רגיל
    הדגל -W אומר שפריוריטי מחכה עד שהתכנית החיצונית מסיימת את עבודתה
    snoof123
    משתתף
    נעם תודה רבה על המענה,
    לזה התכוונתי בעצם, במידה ויש לי כמה משתנים, כיצד אני קובע את הסדר?
    נניח אני מכניס: :$.NUM, :$.NUM2 וכו'…

    האם זה משהו שנקבע ברמת תכנית C או ברמת הפריוריטי? (סדר הזנת הפרמטרים).

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

    אם מדובר בתכנית חיצונית, דוגמא SONRAW, עליך להיצמד לסדר הפרמטרים, אך אם מדובר בתכנית חיצונית שאתה כותב (כמו בדוגמא שנתתי קודם), הסדר פחות קריטי אם כי הוא חייב לתאם את סדר הפרמטרים שהתכנית מצפה לקבל.

    snoof123
    משתתף
    תודה רבה על העזרה נעם, לא יודע מה הייתי עושה בלעדיך 🙂
    snoof123
    משתתף
    שאלה נוספת בהקשר הזה:
    האם יש לי דרך להפעיל קובץ מכל מחשב?
    חלק מהמשתמשים שלנו עובדים בקליינט (מיפוי לכונן W), חלק אחר מהמשתמשים עובדים ישירות מהסרבר (שרת) ובמקרה הזה הפריוריטי נמצאת על כונן D ואין מיפוי לW ברוב המקרים.

    כשאני בונה ממשק למסכים מתוך קובץ אני כותב לו:
    ../system/load/../..

    האם יש דרך להפעיל קובץ חיצוני שיושב גם כן בתיקיית SYSTEM\LOAD באמצעות קיצור של הנתיב והחלפה של שם הכונן ב".." (2 נקודות) כמו שאנחנו עושים בממשקים למסכים (מתוך קובץ)?

    yitzchok
    משתתף
    IL
    אני חושב שראינו כאן בעבר ש-winapp דורשת נתיב מפורש
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    snoof123
    משתתף
    היי יצחק, תודה על המענה.
    מה אתה היית עושה? האם ממפה את הכונן לדרייבר קבוע נניח W גם למשתמשים שמתחברים מרחוק? או שהיית הולך על פיתרון אחר שאני מפספס? 🙂
    yitzchok
    משתתף
    IL
    לא יודע
    יכול להיות שמיפוי זה הפתרון הפשוט ביותר
      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
    snoof123
    משתתף
    מקפיץ שוב את הנושא לשאלה נוספת בנושא זה:
    האם פריוריטי יודעת לקבל תשובה מתכנית חיצונית שהיא הפעילה?

    נניח שאני מפעיל תכנית חיצונית ושולח פרמטר. האם הפריוריטי יודעת לקבל תשובה מהקובץ שהיא הפעילה? (הצליח, נכשל) ?

    תודה מראש לכל העוזרים 🙂

    yitzchok
    משתתף
    IL
    לגבי הצליח/נכשל יכול להיות שהתוכנה WINAPP מחזיר (דרך ה-EXECUTE) את ה-ERRORLEVEL (ערך החזרה) של התוכנה שהופעלה לתוך המשתנה RETVAL: אבל אני חושש שאפילו זה לא קורה. אפשר לאלץ תוכנה להחזיר ערך של כשלון ולבדוק…

    אבל זה בסה"כ יהיה ערך INT. אם תרצה לקבל משהו יותר מורכב אתה צריך לדאוג או שהתהליך שאתה מפעיל יפעיל בתורו טעינה חזרה לתוך פריוריטי או שהוא תשאיר לך תוצאות בקובץ במקום ידוע ולאחר הפעלת התוכנה בהמשך ההרצה הפרוצדרה שלך תאסוף את התוצאות ותעבד אותן עם הכלים המעטים שיש בפריוריטי אם שתבצע הפרוצדורה עצמה טעינה של אותן תוצאות לתוך פריוריטי.

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

      [ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]
מוצגות 10 תגובות – 1 עד 10 (מתוך 10 סה״כ)
  • יש להתחבר למערכת על מנת להגיב.