使用VC++6.0制作ASP服务器控件简介
2006-07-21 11:45:11 来源:WEB开发网二、创建COM对象(新建ATL活动模版库类)
在菜单上选择Insert New Class,并新建一个ATL Class,如取名为CmyComponent,你会发现在接口表中出现了一个ImyComponent,以后创建该接口的方法和属性就可以在ASP中使用了。把Aggregatable选项去掉,我们不需要它。保持其他不变。
三、添加接口方法
在ClassView中,右击ImyComponent,在出现的菜单中按Add Method。如图,在Method Name中可写上方法名如InitMyComp。在Parameters中写上方法的参数如[in]int Number1,[out,retbal]int* Number2。这里要特别说明的是参数的写法。
1.对于传入的参数必须在参数前加上[in],然后可跟上如int n或float f等。且每个传入参数前都必须写明。
2.对于调用方法的返回,不再是该方法名前的类型(因为所有这些方法都返回HRESULT,即表明是否调用成功),所以使用传出的参数,在参数前必须加上[out,retval],然后可跟上如int* n 或者float* f等(如果返回的是int 或float 类型值时)。且每个方法仅限于返回一个这样的参数。在函数体中可如写上如“*Number2=Number1;”,表示把输入参数作为传出参数。
3.对于最常用的字符串参数在此我们使用BSTR str而不是通常的char* 或CString,所以在参数中需要写作[in]BSTR str 或[out,retval]BSTR* str。需要特别注意与CString的转换。如新建一个函数StrConv([in]BSTR bstr1,[out,retval]BSTR* bstr2),在函数体中可写上如:
更多精彩
赞助商链接