November 25, 2008 at 15:43:41 · Filed under C/C++, PHP
最近用C++开发一个基于WebBrowser的Application,界面都是在一个IFRAME里展示,由于需要会员登录模块,结果却出现在IFRAME里无法保留SESSION的问题,上MICROSOFT官方找到了答案:
@header(‘P3P: CP=”CAO PSA OUR”‘);
一句代码搞定!
P3P是微软的隐私策略,通常情况下跨域IFRAME或者FRAMESET默认采用的隐私策略为“中”,该级别的策略拒绝保留SESSION。CAO PSA OUR则意味着你同意跨域保留SESSION。
详细资料可以查看官方文档:http://support.microsoft.com/kb/323752
No Comments »
December 23, 2007 at 21:23:52 · Filed under C/C++
重载XDocHostUIHandler::GetHostInfo方法即可
相关代码如下:
HRESULT FAR EXPORT CMyControlSite::XDocHostUIHandler::GetHostInfo(DOCHOSTUIINFO* pInfo)
{
METHOD_PROLOGUE(CMyControlSite, DocHostUIHandler)
//pInfo->dwFlags = DOCHOSTUIFLAG_NO3DBORDER;
pInfo->dwFlags = DOCHOSTUIFLAG_DIALOG; // 禁止选择
pInfo->dwFlags |= DOCHOSTUIFLAG_SCROLL_NO; // 去掉滚动条
pInfo->dwDoubleClick = DOCHOSTUIDBLCLK_DEFAULT;
return S_OK;
}
该方法中,可延伸的内容也非常,比如设置默认的CSS,设置浏览器默认的属性等。
DOCHOSTUIFLAG_DIALOG = 0×00000001,
DOCHOSTUIFLAG_DISABLE_HELP_MENU = 0×00000002,
DOCHOSTUIFLAG_NO3DBORDER = 0×00000004,
DOCHOSTUIFLAG_SCROLL_NO = 0×00000008,
DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE = 0×00000010,
DOCHOSTUIFLAG_OPENNEWWIN = 0×00000020,
DOCHOSTUIFLAG_DISABLE_OFFSCREEN = 0×00000040,
DOCHOSTUIFLAG_FLAT_SCROLLBAR = 0×00000080,
DOCHOSTUIFLAG_DIV_BLOCKDEFAULT = 0×00000100,
DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY = 0×00000200,
DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY = 0×00000400,
DOCHOSTUIFLAG_CODEPAGELINKEDFONTS = 0×00000800,
DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8 = 0×00001000,
DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8 = 0×00002000,
DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE = 0×00004000,
DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION = 0×00010000,
DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION = 0×00020000,
DOCHOSTUIFLAG_THEME = 0×00040000,
DOCHOSTUIFLAG_NOTHEME = 0×00080000,
DOCHOSTUIFLAG_NOPICS = 0×00100000,
DOCHOSTUIFLAG_NO3DOUTERBORDER = 0×00200000
No Comments »