知道的说下。

yaozhiyong110 2009-10-20 11:06:18
GetPrivateProfileString("连接字串","link",_T(""),link.GetBuffer(MAX_PATH),MAX_PATH,path);
是从ini文件中读取连接字符串
调试看link = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;pwd=sa; Initial Catalog=text"

但m_Pconn->Open(link.GetBuffer(0),_T("sa"),_T("sa"),adModeUnknown); 追踪到open时 发现
inline HRESULT Connection15::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options ); 函数中的ConnectionString = "P "; 好像是后面的字符丢了。

如果在程序中直接link = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;pwd=sa; Initial Catalog=text" 就是不用GetPrivateProfileString从ini文件取连接字符串 那么ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;pwd=sa; Initial Catalog=text" 就没有丢掉后面的字符串 为什么? 感觉应该是GetPrivateProfileString这个函数的问题 有人知道原因吗?知道的说下,谢谢。
...全文
90 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaozhiyong110 2009-10-20
  • 打赏
  • 举报
回复
解决了
GetPrivateProfileString("连接字串","link",_T(""),link.GetBufferSetLength(MAX_PATH + 1),MAX_PATH,path); 从文件中取数据时用 GetBufferSetLength(MAX_PATH + 1),也不知道具体原因
抽空研究下GetBufferSetLength和GetBuffer的区别 分给bancxc 了 蛮热心的 谢谢大家。
yaozhiyong110 2009-10-20
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 bancxc 的回复:]
看一下link.GetBuffer(0)值是什么
[/Quote]


有内容 从INI文件得到的link或者程序直接赋值的link内容一样。
bancxc 2009-10-20
  • 打赏
  • 举报
回复
看一下link.GetBuffer(0)值是什么
华夏小卒 2009-10-20
  • 打赏
  • 举报
回复
不懂这些
yaozhiyong110 2009-10-20
  • 打赏
  • 举报
回复
意思就是 用GetPrivateProfileString取的内容放到变量link中 但传到inline HRESULT Connection15::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options ); 函数的时候 接收变量的ConnectionString 却是 "P ",内容不对


而我不用GetPrivateProfileString从文件中得到link 在程序中直接给link赋值"Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;pwd=sa; Initial Catalog=text" 那么传给open函数是 接收变量的ConnectionString 得到了我传的内容。为什么?


跟 GetBuffer(0)有关? 我传不同的变量 变量内容一样,区别就是一个是用GetPrivateProfileString得到 一个直接赋值 传进去都会重新构造一个CString 对象的啊 应该和GetBuffer(0)无关的啊
--小F-- 2009-10-20
  • 打赏
  • 举报
回复
不清楚
dawugui 2009-10-20
  • 打赏
  • 举报
回复
这个看不懂,帮顶.
bancxc 2009-10-20
  • 打赏
  • 举报
回复
是不是跟link.GetBuffer(0)有关啊 猜的
sgtzzc 2009-10-20
  • 打赏
  • 举报
回复
好乱

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧