基于B/S体系结构开发应用系统
eryScores和RequeryAllScores,分别对教师、教务部门和学生的请求做出相应的处理,并将查询结果集返回给用户。
以下是实现该组件Score.dll接口描述以及实现方法的部分代码,从中可以看到组件的接口是如何实现的:
import "ocidl.idl";
[
object,
uuid(46C01798-BE39-4FC0-A25D-718BA31DFADC),
dual,
helpstring("IStudentScore Interface"),
pointer_default(unique)
]
interface IStudentScore : IDispatch{
[propget, id(1), helpstring("课程号")] HRESULT SubjNo([out, retval] BSTR *pVal);
//其它接口部分从略
[id(5), helpstring("method RequeryScores")] HRESULT RequeryScores(([out,retval]LPDISPATCH* ppRecordset));
};
STDMETHODIMP CStudentScore::RequeryScores()
{
HRESULT hr=S_OK;
IobjectContext* m_spObjectContext=NULL;
//利用ADO访问数据库
::CoInitialize(NULL);
_RecordsetPtr pRecordSet=NULL,pRecordSetClone=NULL;
BSTR bstrDSN=::SysAllocString(L"Provider=SQLOLEDB.1;Persist Security Info=True;\
Password=;Initial Catalog=pubs;Data Source=zhudamiing;User ID=sa");
BSTR bstrSQL;
try{
&n 《基于B/S体系结构开发应用系统(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/169391.html
以下是实现该组件Score.dll接口描述以及实现方法的部分代码,从中可以看到组件的接口是如何实现的:
import "ocidl.idl";
[
object,
uuid(46C01798-BE39-4FC0-A25D-718BA31DFADC),
dual,
helpstring("IStudentScore Interface"),
pointer_default(unique)
]
interface IStudentScore : IDispatch{
[propget, id(1), helpstring("课程号")] HRESULT SubjNo([out, retval] BSTR *pVal);
[propput, id(1), helpstring("课程号")] HRESULT SubjNo([in] BSTR newVal);
//其它接口部分从略
[id(5), helpstring("method RequeryScores")] HRESULT RequeryScores(([out,retval]LPDISPATCH* ppRecordset));
};
STDMETHODIMP CStudentScore::RequeryScores()
{
HRESULT hr=S_OK;
IobjectContext* m_spObjectContext=NULL;
//利用ADO访问数据库
::CoInitialize(NULL);
_RecordsetPtr pRecordSet=NULL,pRecordSetClone=NULL;
BSTR bstrDSN=::SysAllocString(L"Provider=SQLOLEDB.1;Persist Security Info=True;\
Password=;Initial Catalog=pubs;Data Source=zhudamiing;User ID=sa");
BSTR bstrSQL;
try{
&n 《基于B/S体系结构开发应用系统(第3页)》