From: Eric Hourant on
Hello,
I try to use the outlctlx.dll downloaded from Microsft web server.
- Inf file has been installed
- outlctlx registered (regsvr32 )
- in VO, setup ole control, class CLASS MicrosoftOutlookView INHERIT
OleControl has been created
- in the wed, add an ole control that inherits from MicrosoftOutlookView
- in DialogWindow postinit method :

METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
LOCAL lVal AS LOGIC

SUPER:PostInit(oParent, uExtra)

lVal :=SELF:oDCOleControl:CreateEmbedding("OVCtl.OVCtl.1")
SELF:oDCOleControl:InitAutoObject()

SELF:oDCOleControl:Namespace :="MAPI"
SELF:oDCOleControl:Folder :="Inbox"
SELF:oDCOleControl:View :=""
SELF:oDCOleControl:Restriction :=""
SELF:oDCOleControl:DeferUpdate :="0"

RETURN NIL

lVal return true.
I get a gpf on ... NameSpace="MAPI" line.

Any idea ?

TIA


Eric




From: Michael Rubinstein on
Eric, hard to tell without installing this control. Just looking at your
code, you call CreateEmbedding() in PostInit(), which is OK. However, if you
let the WED generate code it calls OLE Control Init() method followed by
CreateFromAppDocStorage(). Did you comment the last one out? The line
InitAutoObject() in PostInit() is not necessary. You can try instantiating
the OleControl in PostInit(), which is in my experience a better way. I read
some warnings about this particular ActiveX
http://www.devx.com/getHelpOn/10MinuteSolution/20375 .

Michael

"Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
news:4527a315$0$30053$ba620e4c(a)news.skynet.be...
> Hello,
> I try to use the outlctlx.dll downloaded from Microsft web server.
> - Inf file has been installed
> - outlctlx registered (regsvr32 )
> - in VO, setup ole control, class CLASS MicrosoftOutlookView INHERIT
> OleControl has been created
> - in the wed, add an ole control that inherits from MicrosoftOutlookView
> - in DialogWindow postinit method :
>
> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
> LOCAL lVal AS LOGIC
>
> SUPER:PostInit(oParent, uExtra)
>
> lVal :=SELF:oDCOleControl:CreateEmbedding("OVCtl.OVCtl.1")
> SELF:oDCOleControl:InitAutoObject()
>
> SELF:oDCOleControl:Namespace :="MAPI"
> SELF:oDCOleControl:Folder :="Inbox"
> SELF:oDCOleControl:View :=""
> SELF:oDCOleControl:Restriction :=""
> SELF:oDCOleControl:DeferUpdate :="0"
>
> RETURN NIL
>
> lVal return true.
> I get a gpf on ... NameSpace="MAPI" line.
>
> Any idea ?
>
> TIA
>
>
> Eric
>
>
>
>


From: Eric Hourant on
Hello Michael,
Thanks for your answer.

Here are the Init and PosInit methods. Same problem.

METHOD Init(oParent,uExtra) CLASS ShowOutlookDlg

SELF:PreInit(oParent,uExtra)

SUPER:Init(oParent,ResourceID{"ShowOutlookDlg",_GetInst()},TRUE)

oCCPushButton1 :=
PushButton{SELF,ResourceID{SHOWOUTLOOKDLG_PUSHBUTTON1,_GetInst()}}
oCCPushButton1:HyperLabel :=
HyperLabel{#PushButton1,"Push",NULL_STRING,NULL_STRING}

oDCOLEObject :=
MicrosoftOutlookView{SELF,ResourceID{SHOWOUTLOOKDLG_OLEOBJECT,_GetInst()}}
oDCOLEObject:HyperLabel :=
HyperLabel{#OLEObject,NULL_STRING,NULL_STRING,NULL_STRING}

SELF:Caption := "InBox"
SELF:HyperLabel :=
HyperLabel{#ShowOutlookDlg,"InBox",NULL_STRING,NULL_STRING}

SELF:PostInit(oParent,uExtra)

RETURN SELF

METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
LOCAL lVal AS LOGIC

SUPER:PostInit(oParent, uExtra)

lVal :=SELF:oDCOLEObject:CreateEmbedding("OVCtl.OVCtl.1")

SELF:oDCOLEObject:Namespace :="MAPI"
SELF:oDCOLEObject:Folder :="Inbox"
SELF:oDCOLEObject:View :=""
SELF:oDCOLEObject:Restriction :=""
SELF:oDCOLEObject:DeferUpdate :="0"

RETURN NIL


"Michael Rubinstein" <mSPAMREMOVEr(a)mrubinstein.com> a ?crit dans le message
de news: 4opttmFfl5guU1(a)individual.net...
> Eric, hard to tell without installing this control. Just looking at
> your code, you call CreateEmbedding() in PostInit(), which is OK. However,
> if you let the WED generate code it calls OLE Control Init() method
> followed by CreateFromAppDocStorage(). Did you comment the last one out?
> The line InitAutoObject() in PostInit() is not necessary. You can try
> instantiating the OleControl in PostInit(), which is in my experience a
> better way. I read some warnings about this particular ActiveX
> http://www.devx.com/getHelpOn/10MinuteSolution/20375 .
>
> Michael
>
> "Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
> news:4527a315$0$30053$ba620e4c(a)news.skynet.be...
>> Hello,
>> I try to use the outlctlx.dll downloaded from Microsft web server.
>> - Inf file has been installed
>> - outlctlx registered (regsvr32 )
>> - in VO, setup ole control, class CLASS MicrosoftOutlookView INHERIT
>> OleControl has been created
>> - in the wed, add an ole control that inherits from MicrosoftOutlookView
>> - in DialogWindow postinit method :
>>
>> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
>> LOCAL lVal AS LOGIC
>>
>> SUPER:PostInit(oParent, uExtra)
>>
>> lVal :=SELF:oDCOleControl:CreateEmbedding("OVCtl.OVCtl.1")
>> SELF:oDCOleControl:InitAutoObject()
>>
>> SELF:oDCOleControl:Namespace :="MAPI"
>> SELF:oDCOleControl:Folder :="Inbox"
>> SELF:oDCOleControl:View :=""
>> SELF:oDCOleControl:Restriction :=""
>> SELF:oDCOleControl:DeferUpdate :="0"
>>
>> RETURN NIL
>>
>> lVal return true.
>> I get a gpf on ... NameSpace="MAPI" line.
>>
>> Any idea ?
>>
>> TIA
>>
>>
>> Eric
>>
>>
>>
>>
>
>


From: Michael Rubinstein on
Eric, I downloaded and registered the MS Outlook View Control (OVC) and
I am getting the same errors when calling any property or method. I tried
calling late-bound - makes no difference. I have Outlook 2000 SP-1 on my XP
Pro SP-2 machine. The OVC is from a later Outlook version. I suggest testing
if OVC works on a web page on the same machine. The help file ovcref.chm has
a few samples. The Help file does not claim that Outlook View Control can be
called from any language supporting COM.

Michael

"Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
news:4527c445$0$32426$ba620e4c(a)news.skynet.be...
> Hello Michael,
> Thanks for your answer.
>
> Here are the Init and PosInit methods. Same problem.
>
> METHOD Init(oParent,uExtra) CLASS ShowOutlookDlg
>
> SELF:PreInit(oParent,uExtra)
>
> SUPER:Init(oParent,ResourceID{"ShowOutlookDlg",_GetInst()},TRUE)
>
> oCCPushButton1 :=
> PushButton{SELF,ResourceID{SHOWOUTLOOKDLG_PUSHBUTTON1,_GetInst()}}
> oCCPushButton1:HyperLabel :=
> HyperLabel{#PushButton1,"Push",NULL_STRING,NULL_STRING}
>
> oDCOLEObject :=
> MicrosoftOutlookView{SELF,ResourceID{SHOWOUTLOOKDLG_OLEOBJECT,_GetInst()}}
> oDCOLEObject:HyperLabel :=
> HyperLabel{#OLEObject,NULL_STRING,NULL_STRING,NULL_STRING}
>
> SELF:Caption := "InBox"
> SELF:HyperLabel :=
> HyperLabel{#ShowOutlookDlg,"InBox",NULL_STRING,NULL_STRING}
>
> SELF:PostInit(oParent,uExtra)
>
> RETURN SELF
>
> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
> LOCAL lVal AS LOGIC
>
> SUPER:PostInit(oParent, uExtra)
>
> lVal :=SELF:oDCOLEObject:CreateEmbedding("OVCtl.OVCtl.1")
>
> SELF:oDCOLEObject:Namespace :="MAPI"
> SELF:oDCOLEObject:Folder :="Inbox"
> SELF:oDCOLEObject:View :=""
> SELF:oDCOLEObject:Restriction :=""
> SELF:oDCOLEObject:DeferUpdate :="0"
>
> RETURN NIL
>
>
> "Michael Rubinstein" <mSPAMREMOVEr(a)mrubinstein.com> a ?crit dans le
> message de news: 4opttmFfl5guU1(a)individual.net...
>> Eric, hard to tell without installing this control. Just looking at
>> your code, you call CreateEmbedding() in PostInit(), which is OK.
>> However, if you let the WED generate code it calls OLE Control Init()
>> method followed by CreateFromAppDocStorage(). Did you comment the last
>> one out? The line InitAutoObject() in PostInit() is not necessary. You
>> can try instantiating the OleControl in PostInit(), which is in my
>> experience a better way. I read some warnings about this particular
>> ActiveX http://www.devx.com/getHelpOn/10MinuteSolution/20375 .
>>
>> Michael
>>
>> "Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
>> news:4527a315$0$30053$ba620e4c(a)news.skynet.be...
>>> Hello,
>>> I try to use the outlctlx.dll downloaded from Microsft web server.
>>> - Inf file has been installed
>>> - outlctlx registered (regsvr32 )
>>> - in VO, setup ole control, class CLASS MicrosoftOutlookView INHERIT
>>> OleControl has been created
>>> - in the wed, add an ole control that inherits from MicrosoftOutlookView
>>> - in DialogWindow postinit method :
>>>
>>> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
>>> LOCAL lVal AS LOGIC
>>>
>>> SUPER:PostInit(oParent, uExtra)
>>>
>>> lVal :=SELF:oDCOleControl:CreateEmbedding("OVCtl.OVCtl.1")
>>> SELF:oDCOleControl:InitAutoObject()
>>>
>>> SELF:oDCOleControl:Namespace :="MAPI"
>>> SELF:oDCOleControl:Folder :="Inbox"
>>> SELF:oDCOleControl:View :=""
>>> SELF:oDCOleControl:Restriction :=""
>>> SELF:oDCOleControl:DeferUpdate :="0"
>>>
>>> RETURN NIL
>>>
>>> lVal return true.
>>> I get a gpf on ... NameSpace="MAPI" line.
>>>
>>> Any idea ?
>>>
>>> TIA
>>>
>>>
>>> Eric
>>>
>>>
>>>
>>>
>>
>>
>
>


From: Eric Hourant on
Hello Michael,
Thanks for taking some time.

I finaly found the solution. The OVC is included installed automatically
with Outlook >2002. So there was no need for installing something else.
I just re-registered the c:\program files\microsoft
office\office11\OUTLCTL.DLL and everything works perpectly.
I also had to recreate all the ole automation stuff.

Eric



"Michael Rubinstein" <mSPAMREMOVEr(a)mrubinstein.com> a ?crit dans le message
de news: 4oteehFfp35bU1(a)individual.net...
> Eric, I downloaded and registered the MS Outlook View Control (OVC) and
> I am getting the same errors when calling any property or method. I tried
> calling late-bound - makes no difference. I have Outlook 2000 SP-1 on my
> XP Pro SP-2 machine. The OVC is from a later Outlook version. I suggest
> testing if OVC works on a web page on the same machine. The help file
> ovcref.chm has a few samples. The Help file does not claim that Outlook
> View Control can be called from any language supporting COM.
>
> Michael
>
> "Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
> news:4527c445$0$32426$ba620e4c(a)news.skynet.be...
>> Hello Michael,
>> Thanks for your answer.
>>
>> Here are the Init and PosInit methods. Same problem.
>>
>> METHOD Init(oParent,uExtra) CLASS ShowOutlookDlg
>>
>> SELF:PreInit(oParent,uExtra)
>>
>> SUPER:Init(oParent,ResourceID{"ShowOutlookDlg",_GetInst()},TRUE)
>>
>> oCCPushButton1 :=
>> PushButton{SELF,ResourceID{SHOWOUTLOOKDLG_PUSHBUTTON1,_GetInst()}}
>> oCCPushButton1:HyperLabel :=
>> HyperLabel{#PushButton1,"Push",NULL_STRING,NULL_STRING}
>>
>> oDCOLEObject :=
>> MicrosoftOutlookView{SELF,ResourceID{SHOWOUTLOOKDLG_OLEOBJECT,_GetInst()}}
>> oDCOLEObject:HyperLabel :=
>> HyperLabel{#OLEObject,NULL_STRING,NULL_STRING,NULL_STRING}
>>
>> SELF:Caption := "InBox"
>> SELF:HyperLabel :=
>> HyperLabel{#ShowOutlookDlg,"InBox",NULL_STRING,NULL_STRING}
>>
>> SELF:PostInit(oParent,uExtra)
>>
>> RETURN SELF
>>
>> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
>> LOCAL lVal AS LOGIC
>>
>> SUPER:PostInit(oParent, uExtra)
>>
>> lVal :=SELF:oDCOLEObject:CreateEmbedding("OVCtl.OVCtl.1")
>>
>> SELF:oDCOLEObject:Namespace :="MAPI"
>> SELF:oDCOLEObject:Folder :="Inbox"
>> SELF:oDCOLEObject:View :=""
>> SELF:oDCOLEObject:Restriction :=""
>> SELF:oDCOLEObject:DeferUpdate :="0"
>>
>> RETURN NIL
>>
>>
>> "Michael Rubinstein" <mSPAMREMOVEr(a)mrubinstein.com> a ?crit dans le
>> message de news: 4opttmFfl5guU1(a)individual.net...
>>> Eric, hard to tell without installing this control. Just looking at
>>> your code, you call CreateEmbedding() in PostInit(), which is OK.
>>> However, if you let the WED generate code it calls OLE Control Init()
>>> method followed by CreateFromAppDocStorage(). Did you comment the last
>>> one out? The line InitAutoObject() in PostInit() is not necessary. You
>>> can try instantiating the OleControl in PostInit(), which is in my
>>> experience a better way. I read some warnings about this particular
>>> ActiveX http://www.devx.com/getHelpOn/10MinuteSolution/20375 .
>>>
>>> Michael
>>>
>>> "Eric Hourant" <ehourant(a)nospamno-echo-soft.com> wrote in message
>>> news:4527a315$0$30053$ba620e4c(a)news.skynet.be...
>>>> Hello,
>>>> I try to use the outlctlx.dll downloaded from Microsft web server.
>>>> - Inf file has been installed
>>>> - outlctlx registered (regsvr32 )
>>>> - in VO, setup ole control, class CLASS MicrosoftOutlookView INHERIT
>>>> OleControl has been created
>>>> - in the wed, add an ole control that inherits from
>>>> MicrosoftOutlookView
>>>> - in DialogWindow postinit method :
>>>>
>>>> METHOD PostInit(oParent,uExtra) CLASS ShowOutlookDlg
>>>> LOCAL lVal AS LOGIC
>>>>
>>>> SUPER:PostInit(oParent, uExtra)
>>>>
>>>> lVal :=SELF:oDCOleControl:CreateEmbedding("OVCtl.OVCtl.1")
>>>> SELF:oDCOleControl:InitAutoObject()
>>>>
>>>> SELF:oDCOleControl:Namespace :="MAPI"
>>>> SELF:oDCOleControl:Folder :="Inbox"
>>>> SELF:oDCOleControl:View :=""
>>>> SELF:oDCOleControl:Restriction :=""
>>>> SELF:oDCOleControl:DeferUpdate :="0"
>>>>
>>>> RETURN NIL
>>>>
>>>> lVal return true.
>>>> I get a gpf on ... NameSpace="MAPI" line.
>>>>
>>>> Any idea ?
>>>>
>>>> TIA
>>>>
>>>>
>>>> Eric
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>