2013-10-03 40 views
0

如何將電子郵件正文放入備忘錄字段中?我收到一個錯誤。將電子郵件正文放入備忘錄字段

我想將電子郵件的正文繪製到備忘錄字段中。

錯誤#1943年 消息:成員ACTIVEINSPECTOR不計算爲一個對象

USE CMCONTROL IN 0 
USE CMEMAILS IN 0 

local array MyFiles[1,5] 
    nFilesFound = ADIR(MyFiles, ALLTRIM(cmcontrol.cpath) + '*.*') 
    xx = 0 
for i = 1 to nFilesFound 
    xx = xx + 1 
    WAIT WINDOW NOWAIT 'FortenStar® Count-O-Matic'+CHR(13)+CHR(13)+'Email Record Count: '+ ALLTRIM(STR(xx)) 
    *********************************************************************************** 
    *** HOW CAN I MAKE THIS WORK? 
    ***********************************************************************************  
    msgfile=ALLTRIM(cmcontrol.cpath) + ALLTRIM(cmemails.csubject) 
    o = CreateObject("Outlook.Application") 
    emailmsg = o.ActiveInspector.CurrentItem 
    memofiledvariable = emailmsg.body 
    *********************************************************************************** 
    *********************************************************************************** 
    ***********************************************************************************  
    insert into cmemails (cprimary, csubject, ddate, dtime, cattribs, mbody) values (generateGuid(26), MyFiles[ i, 1], MyFiles[ i, 3], MyFiles[ i, 4], MyFiles[ i, 5], memofiledvariable) 
endfor 
USE IN SELECT('CMEMAILS') 
USE IN SELECT('CMCONTROL') 

回答

1

您不能在FoxPro中使用CREATEOBJECT訪問Outlook的打開實例。你需要使用GETOBJECT,然後你需要參考你正在使用的細節。

其他一些建議:

  1. 不要使用單字母變量名,即使他們在FoxPro中抱怨短名單不是。
  2. 測試o是一個對象,在做任何事情之前處於良好狀態。
  3. 請勿使用AcitveInspector或其辦公用戶,除非您正在尋找用戶目前正在查看的內容。在這樣的例子中,您應該搜索API以瞭解如何自行篩選每個電子郵件項目。
  4. 雖然我對Outlook的內部機制並不是100%熟悉,但如果您已將用戶的電子郵件存放在文件目錄ALREADY中,那麼您應該看看是否可以對其進行過濾。如果MIME解析器處於本機格式,則它們並不難,如果它是XML,則DOM比VBA更容易。
相關問題