在COM组件中使用ASP内置对象
2006-07-22 22:58:18 来源:WEB开发网核心提示: 5、现在我们在MyTest接口里分别用Request和Response对象实现一个巨简单的方法,实际上现在ASP的五大法宝都交给你了,在COM组件中使用ASP内置对象(3),你要怎么用就看你自己的啦,TestASPComp方法用来从一个Post到服务端的Form里获取元素的值
5、现在我们在MyTest接口里分别用Request和Response对象实现一个巨简单的方法,实际上现在ASP的五大法宝都交给你了,你要怎么用就看你自己的啦。
TestASPComp方法用来从一个Post到服务端的Form里获取元素的值,随后把刚才获取的值显示出来。具体实现如下:
STDMETHODIMP CMyTest::TestASPComp(void)
{
//declare a IRequestDictionary interface pointer
CComPtr<IRequestDictionary> pDict = NULL;
HRESULT hr = S_OK;
_bstr_t str;
try
{
//use the get_Form method of the Reqeust object to access the Form collection
hr = m_piRequest->get_Form(&pDict);
if (FAILED(hr))
return hr;
//get the specified field value
hr = GetDictItemValue(pDict, L"Name", str);
if (FAILED(hr))
_com_issue_errorex(hr, pDict, __uuidof(IRequestDictionary));
//write out the field name and its value
m_piResponse->Write(_variant_t(L"Name="));
m_piResponse->Write(_variant_t(str));
//ditto
hr = GetDictItemValue(pDict, L"Message", str);
if (FAILED(hr))
_com_issue_errorex(hr, pDict, __uuidof(IRequestDictionary));
m_piResponse->Write(_variant_t(L"<br>\nMessage="));
m_piResponse->Write(_variant_t(str));
}
catch (_com_error e)
{
return e.Error();
}
return S_OK;
}
6、简单测试一下咱们的组件
更多精彩
赞助商链接