用vc6开发的ALT简单控件,拥有一个方法
STDMETHODIMP CTestString::GetString(BSTR strIn, BSTR *pVal)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState()) // TODO: Add your implementation code here
CString str = _com_util::ConvertBSTRToString(strIn); *pVal = _com_util::ConvertStringToBSTR(str); return S_OK;
}该方法什么都不干,接收一个输入字符串,然后将其输出,但是在ASP或ASPX DOTNET1.1环境中调用该组件方法,输入字符串参数均有大小限制,超过一定大小(6万字节左右)就会报错,但是奇怪的是用vc6编程序调用或者使用ASPX DOTNET2.0以上环境使用,则所输入字符串大小无限制,受windows2003下iis6限制至少200k是没问题的,不知何故,请高手赐教。谢谢
STDMETHODIMP CTestString::GetString(BSTR strIn, BSTR *pVal)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState()) // TODO: Add your implementation code here
CString str = _com_util::ConvertBSTRToString(strIn); *pVal = _com_util::ConvertStringToBSTR(str); return S_OK;
}该方法什么都不干,接收一个输入字符串,然后将其输出,但是在ASP或ASPX DOTNET1.1环境中调用该组件方法,输入字符串参数均有大小限制,超过一定大小(6万字节左右)就会报错,但是奇怪的是用vc6编程序调用或者使用ASPX DOTNET2.0以上环境使用,则所输入字符串大小无限制,受windows2003下iis6限制至少200k是没问题的,不知何故,请高手赐教。谢谢
解决方案 »
- MessageBox编程的困惑
- 无法打开预编译头文件,求助,急啊
- 请做SP行业的技术们来加入SP的技术群:4687819大家共同研究
- 一个的奇怪的问题
- 如何传递参数到dll导出的非模态窗口
- 如何察看一个程序是用什么语言写的?如vc,vb等?
- 可不可以通过电脑,利用串口控制摩托罗p7689手机,发送短消息?
- 在Windowless窗体上再显示其它控件?
- 60分:为什么typedef CHAR *LPSTR, *PSTR不写成typedef CHAR *LPSTR, CHAR *PSTR
- 图片批量转换格式和改变大小
- 请问在属性页中自定义定义的消息响应函数为什么得不到View类中的响应?
- SkinMagic问题
改成
*pVal = str.AllocSysString();
注意一点:ConvertStringToBSTR只接受ANSI串作为参数,如果你的组件是在UNICODE下编译的就会有问题,因为CString保存的串是UNICODE编码,如果使用CString::AllocSysString则不必担心编码的问题。不过应该不是这个原因,因为如果在UNICODE下编译不会通过。