עבור לתוכן

בעייה בשימוש ב- HTMLDocument

Featured Replies

פורסם

שלום,

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

תודה.

קיים קובץ מצורף שמכיל את השורות הבאות בצורה קריאה יותר.

[ATTACH]3822[/ATTACH]

'In HTML: ------------------------------------------------------------------------------------------


<input name="txtFromDate" type="hidden" id="txtFromDate" value="00000000"/>

'In Form: --------------------------------------------------------------------------------------------


SetInputField doc, 0, "txtFromDate", "02/08/2013"

'In Module: -----------------------------------------------------------------------------------------


Public From
Public doc As HTMLDocument 'Reference MSHTML.TLB - may end up being IHTMLDocument3

Public Sub SetInputField(doc As HTMLDocument, Form As Integer, Name As String, Value As String)
'doc = HTMLDocument, can be retrieved
' from webbrowser --> webbrowser.document
'Form = number of the form
' (if only one form in the doc --> Form = 0)
'Name = Name of the field you would like to fill
'Value = The new value for the input field called name
'PRE: Legal parameters entered
'POST: Input field with name Name on form Form in document doc will be filled with Value
For q = 0 To doc.Forms(Form).length - 1
If doc.Forms(Form)(q).Name = Name Then
doc.Forms(Form)(q).Value = Value
Exit For
End If
Next q
End Sub


Public q

נערך על-ידי as1as2as3

פורסם
  • מחבר

מסתבר שזו שאלה קשה מאוד - לא השיבו עליה גם בפורומים הגדולים ביותר בחו"ל למרות שצפו בה מאות

ובכל זאת הייתי שמח אם מישהו היה נותן לי כיוון לחיפוש התשובה כי הנושא מאוד דחוף לי.

תודה.

פורסם

אני חושב שהשאלה בעיקר לא ממש ברורה. מה אתה מנסה לכתוב ולמה זה לא עובד?

פורסם
  • מחבר

תודה על תגובתך !

אנסה להסביר:

קיים דף אינטרנט שלצורך הפשטות יש בו שדה קלט אחד - שדה תאריך. הסוג של השדה הוא - "נסתר" - כפי שניתן לראות בקוד ה-HTML.

דף האינטרנט לא ניתן לשינוי ואינו בשליטתי אני רק משתמש בו (ולכן גם לא אוכל למחוק את הסוג - "ניסתר").

קיימת תוכנית VB6 שאת רובה מצאתי באינטרנט והיא עבדה לי באופן מלא על כ-10 דפים אחרים ואין בה דופי - התוכנית מבחינת הפרוצדורות הרלוונטיות מופיעה אף היא בהודעה תחת המילה: "קוד".

תפקידה של התוכנית להיכנס לדף האינטרנט ולהציב תוכן בתוך שדה התאריך - במקרה שלנו צריך להציב: 02/08/2013.

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

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

השאלה היא: איך ניתן בכל זאת להציב את הערך הנ"ל בשדה הנ"ל (כמובן - שוב - מבלי לשנות את ה-HTML ע"י מחיקת המילה נסתר) ???

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

חשבתי שסיימתי את כל העבודה (עובדה: 10 דפים עם שלל שדות, עובדים מצויין) ולא היא - בגלל שדה אחד הכל נתקע.

תודה על ההכוונה למציאת הפתרון.

פורסם
  • מחבר

נפתר !!!

תודה לכל העוזרים :)

נערך על-ידי as1as2as3

ארכיון

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

דיונים חדשים