עבור לתוכן

צריך עזרה בשיפור סקריפט לעבודה

Featured Replies

פורסם

שלום

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

לאחרונה התחלתי קצת ללמוד(מהתנסות עצמאית) את השפה של התוכנת תכנות AutoIt3 כך שבמשך הזמן כתבתי לעצמי מספר סקריפטים ופתרונות לבעיות בווינדוס 7

וכעבור כמה זמן בעת שעבדתי בעבודה קפץ לי הרעיון לתכנט סקריפט שאני אעבוד דרכו.

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

יש בעיה אחת.

הסקריפט עובד בצורה פרמיטיבית וטיפשית.

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

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

אלה הפרמטרים שזמינים מהחלון הבא:

http://img847.imageshack.us/img847/3040/85986046.jpg

Class: זמין אך זה נתון בסיסי מדי לחלון הראשי בלבד ולא לחלון הפנימי

INSTANCE: זמין אך זה נתון שכל פעם משתנה כשפותחים מחדש את החלון.

ID: זמין אך זה כנרה גם נתון בסיסי מדי שלא משתנה ותקף לגבי החלון הראשי ולא הפנימי

text: אין מידע

זמין :Position

Size: זמין

ControlClick Coords: זמין

Style: זמין

ExStyle: זמין

Handle: זמין

השתמשתי בפקודות שמשתמשות רק במה שהדגשתי

איך אפשר לתכנת את זה שלא יעבוד לפי הזזת העכבר?

פורסם

נדמה לי שיש כבר כמה תוכנות שיעשו את זה בשבילך.

הן מחפשות את החלונות והכפתורים הנכונים ע"י שילוב של חיפוש class id, שם החלון, טקסט, שם התוכנה וכו'.

תחפש דברים כמו macro recorders וכו'.

אני מופתע ש-autoit לא עושה את זה.

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

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

פורסם
  • מחבר

זאת אכן תוכנה מאוד מיושנת.

היא הומצאה בתקופת ווינדוס 95 ויש לה עוד גרסה לווינדוס ישן יותר מ 95

זאת אומרת שאתה לא מחדש לי...

יש בתוכנה אפשרות להקליט פעולות אבל זה פחות טוב מלתכנת

פורסם

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

פורסם
  • מחבר

אני כמעת הצלחתי לעשות בדיוק את מה שרציתי בעזרת הנתון INSTANCE

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

זה מתלף מסיבה לא ברורה

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים