local olApp := CreateObject("Outlook.Application") local olns := olApp:GetNameSpace("MAPI") local oUserFolder := olns:Folders("alinares@fivetechsoft.com") local oFolder := oUserFolder:Folders("Bandeja de entrada") local n
Time from start: 0 hours 0 mins 0 secs Error occurred at: 05/14/13, 10:01:13 Error description: Error TOleAuto/65535 : TOLEAUTO:NEW Args: [ 1] = C Outlook.Application [ 2] = U [ 3] = U
Stack Calls =========== Called from: => THROW( 0 ) Called from: source\rtl\win32ole.prg => TOLEAUTO:NEW( 0 ) Called from: source\rtl\win32ole.prg => CREATEOBJECT( 0 ) Called from: teste.prg => MAIN( 5 )
System ====== CPU type: AMD Phenom(tm) II X4 820 Processor 2817 Mhz Hardware memory: 3072 megs
Free System resources: 90 % GDI resources: 90 % User resources: 90 %
Windows total applications running: 10 1 , C:\Program Files\Avira\AntiVir Desktop\avgnt.exe 2 , C:\Program Files\Windows Live\Mail\wlmail.exe 3 , C:\Users\Joao\AppData\Local\Google\Chrome\Application\chrome.exe 4 , C:\Windows\Explorer.EXE 5 Advanced Spyware Remover, C:\Program Files\IObit\Advanced Spyware Remover\ASRtray.exe 6 CiceroUIWndFrame, C:\Windows\system32\taskhost.exe 7 DWM Notification Window, C:\Windows\system32\Dwm.exe 8 MSCTFIME UI, C:\Windows\system32\conhost.exe 9 Prompt de Comando - buildx teste, C:\Windows\system32\cmd.exe 10 TaskEng - Processo de Mecanismo do Agendador de Tarefas, C:\Windows\system32\taskeng.exe
Variables in use ================ Procedure Type Value ========================== THROW Param 1: O Class: ERROR Local 1: U Local 2: U TOLEAUTO:NEW Param 1: C "Outlook.Application" Param 2: U Param 3: U Local 1: O Class: TOLEAUTO Local 2: O Class: ERROR CREATEOBJECT Param 1: C "Outlook.Application" Local 1: U MAIN Local 1: U Local 2: U Local 3: U Local 4: U Local 5: U
No se si será posible localizar esa carpeta por su nombre, porque además pueden existir varias cuentas. En mi caso, para hacer el ejemplo, di de alta mi cuenta de correo y creo una carpeta con mi email, por eso en el ejemplo uso mi email (que es la carpeta en donde Outlook ha puesto mi correo).
Supongo que podremos listar todos los nombres y compararlos con algo determinado como "Inbox", "Bandeja de entrada", etc.
oFolder := oUserFolder:Folders("Bandeja de entrada") IF oFolder == NIL oFolder:= oUserFolder:Folders("Inbox") IF oFolder == NIL MsgInfo("¿ Cómo diantres era tu nombre ?") ENDIF ENDIF