我遇到了一个问题
我的实现函数是Edfile(char file[],char key,char cfile[]);
而我有一个CString filename;filename 是一个文件的路径名,怎样才能把filename用到Edfile( char file[],char key,char cfile[])里
我的实现函数是Edfile(char file[],char key,char cfile[]);
而我有一个CString filename;filename 是一个文件的路径名,怎样才能把filename用到Edfile( char file[],char key,char cfile[])里
解决方案 »
- keyboardproc做了一个全局钩子,同时,该dll导出一全局变量,在主调程序中只能得到该全局变量的初始值?
- vc++如何判断鼠标移出了对话框啊?
- 关于类型转换的问题
- 菜鸟求问如何如何在自定义的对话框中把变量传给文档类?
- 请教各位:怎样用钩子获得选中文件的名称路径
- liuyan4794,wanttocto,DarthVader进来拿分吧!
- 关于创建dll的问题
- 如何向指定的多窗口中的其中一个写入数据
- 如何提取指定颜色的坐标
- 111222(~动感超人~) 快来拿分吧!
- 《深入浅出mfc》中有两句话不明白,很简单
- 如何用CDatabase打开Sql server和oracle数据库?100分送上
EDfile(...)
fileName.ReleaseBuffer();
CString str;
int len = str.GetLength();
char* pChar = str.GetBuffer(len);
改为
Edfile(LPCSTR file,char key,LPCSTR cfile);
就可以直接传CString了
Edfile(filename , ....)
但你可以把你修改后的值做为函数牛农对返回值再赋给CString就可以了。
CString filename是从一个Edit box控件(映射了一个变量CString m_path)的内容(内容为文件的路径)
filename=m_path;//即得到了文件的完整路径名
char *str=filename.GetBuffer(filename.GetLength());
再用到EDfile(str,key,char cfile[])中时,我发现str的没有内容,是空的,根本就不能完成我的功能。应当要怎么办,才会使str里有内容
char *pChar = new char[str.GetLength()];
memcpy(pChar,str,str.GetLength());总应该可以了吧。
为什么我这样却可以呢
CString filename="d:\vc\m1.txt";
char* str;
str=(LPSTR)(LPCTSTR)filename;
执行EDfile(str,key,char cfile[])就能得到我要的结果
如果按下面
CString filename是从一个Edit box控件(映射了一个变量CString m_path)的内容(内容为文件的路径)
filename=m_path;//即得到了文件的完整路径名
str=(LPSTR)(LPCTSTR)filename;
执行EDfile(str,key,char cfile[])却不能得到我要的结果
是不是路径错误?
还有d:\vc\m1.txt应该是d:\\vc\\m1.txt吧?
filename=m_path;//即得到了文件的完整路径名
str=(LPSTR)(LPCTSTR)filename;
执行EDfile(str,key,char cfile[])却不能得到我要的结果
你能确定,上述代码执行的时候filemane里面的内容就是和CEdit当中的内容一致吗?
怀疑你没有UpdateData或者没有用GetDlgItem(idc_edit)->GetWindowText这样的方式得到真正的编辑控件内的字符串内容
char *pStr;
pStr = strString.GetBuffer( strString.GetLength());
pStr .....
strString.ReleaseBuffer();