05-01-2006, 09:23
|
|
|
חבר מתאריך: 20.12.01
הודעות: 20,962
|
|
אני מניח שאפשר לכתוב תוכנה כזו ב-VB בקלות בעזרת אוטומציה.
יעני לעשות אובייקט של אאוטלוק ב-VB, ולחכות שינסו לסגור ת'אאוטלוק.
לאובייקט יש אירוע שניתן לטפל בו ב-VB. זה יראה בערך כך:
קוד:
Option Explicit
Private WithEvents oOutlook As Outlook.Application
Private Sub Form_Load()
On Error Resume Next
Set oOutlook = VBA.Interaction.GetObject(, "Outlook.Application")
If Err <> 0 Then MsgBox "fuck off! outlook ain't open!!!"
End Sub
Private Sub oOutlook_Quit()
MsgBox "whatever"
End Sub
שים לב שהוא מנסה "להתחבר" לאאוטלוק רק ברגע שמריצים את התוכנה
(ברגע עליית הטופס), ככה שיש לך קצת על מה לעבוד
לגבי הפצה של VBA - לא מכיר דרך קלה לעשות את זה, חוץ מלהעתיק את
הקוד ל-VBA בכל מחשב
MS לא טרחו לספק אובייקטי אוטומציה בקטע הזה
אין שליטה ב-VBA או באבטחה והרשאות(אופציה של אקסס) דרך אוטומציה.
ד.א.
אם אתה לא רוצה להסתבך עם VB, אני מניח שניתן לכתוב את אותו קוד
ב-VBS, מה שקצת יותר קל להפיץ, ולא דורש ממש לשלם 23746235 דולר
על VB. מה שכן, ב-VBS אין טיימר, וזו תהיה בעיה אם תבחר לממש את
הקטע של השגת אובייקט אאוטלוק ע"י נסיון כל כמה שניות בעזרת טיימר.
(מצד שני, זו שיטה לא מי יודע מה טובה, עדיף להשקיע קצת מחשבה ולחפש
משהו יותר טוב)
ד.א.2
כשאמרתי מניח, התכוונתי שאני מניח שניתן לפתור את הבעייה של השגת
אובייקט אאוטלוק(ולא בעזרת טיימר). הקוד שהבאתי שלם, מתקמפל ופועל
|