C++ 使用代码选择Outlook Express标识

C++ 使用代码选择Outlook Express标识,c++,api,interface,outlook,C++,Api,Interface,Outlook,此代码: TComInterface<IStoreNamespace> pStore; if (SUCCEEDED(CoCreateInstance(CLSID_StoreNamespace, NULL, CLSCTX_INPROC_SERVER, IID_IStoreNamespace, (LPVOID*)&pStore))) { if (SUCCEEDED(pStore->Initialize(Form1->Handle, 1)))

此代码:

TComInterface<IStoreNamespace> pStore;
if (SUCCEEDED(CoCreateInstance(CLSID_StoreNamespace, NULL, CLSCTX_INPROC_SERVER, IID_IStoreNamespace, (LPVOID*)&pStore)))
    {
    if (SUCCEEDED(pStore->Initialize(Form1->Handle, 1)))
        {
        }
    }
TComInterface pStore;
if(成功(CoCreateInstance(CLSID_StoreNamespace,NULL,CLSCTX_INPROC_SERVER,IID_IStoreNamespace,(LPVOID*)&pStore)))
{
if(成功(pStore->Initialize(Form1->Handle,1)))
{
}
}
创建
IStoreNamespace
接口。但它使用Outlook Express的默认标识<如果第二个参数如上所述为
1
(如果为
0
,则使用默认标识),则code>Initialize应提供标识选择

此处的文档()说明:

如果dwReserved的值为0,则命名空间将使用 与默认用户标识关联的数据。如果 dwReserved为1时,将要求用户选择要删除的用户标识 初始化

使用其他标识的唯一方法是手动切换它


是否可以通过编程方式选择标识?

经过一些检查后,似乎无法从我的程序中切换标识。唯一可用的是使用第二个参数(
DWORD dwReserved
)调用上面使用的
IStoreNamespace::Initialize
方法设置为
0
,使用默认标识;或设置为
1
,如果标识已注销并需要密码,则打开Outlook Express窗口;如果标识不需要密码,则不显示任何内容

因此,似乎无法使用此接口自动切换身份