如何从文件中获取文件路径 mfc

如何从文件中获取文件路径 mfc,第1张

最近刚刚接触到RobotFramework,发现这个工具倒是可以满足我的要求,而且可以结合seleniumLibrary,用来做web的自动化测试相当不错。之前我也接触过selenium,不过感觉那个工具更贴近开发人员使用,有了robotFramework之后,感觉这个工具相当强大,而且是贴近测试人员的。之所以说强大,主要是这些测试脚本都可以用文本格式保存(如txt/html等)

==安装篇==

如果有想学的朋友可以自己下载以下文件安装(Google-code里可以找到大部分的安装文件):

这篇文章的内容比较旧了,最新的安装指南请查看 更新篇

python-271msi(首先要有python,请选择将Python加入Path)

wxPython28-win32-unicode-28110-py27exe(wxPython,必须要的)

robotframework-260win32exe(然后装robot的Framework)

robotframework-ride-0381win32exe(robotFramework的IDE,很不错)

robotframework-seleniumlibrary-28win32exe(seleniumLibrary)

安装成功后

执行[PythonDir]\Scripts\ridepy

看到界面就是安装成功了。

如果需要AutoIt支持就下载下面2个东东。

AutoItLibrary-11

pywin32-216win32-py27exe

==入门篇==

安装完成了,这个框架可以说是基于keyword的 *** 作,按F5可以看到所有加载的keyword。

首先新增一个project

然后新增suite

然后新增test case,接着在suite层级add library,把selenium library加进来,添加后按F5检验是否添加成功,如图

OK,继续在suite的setting里设置suite启动和结束的keyword,即Start Selenium Server和Stop Selenium Server,他会在运行时帮助我们自动启动seleniumserver。

接下来在test case里添加一个步骤,open browser(一般用selenium做web测试都要用这个方法来打开浏览器),添加后关键字变成蓝色表示找到关键字了,否则可能是拼写错误或者没有加载相应的library。红色表示有一个必选参数要给定输入值,具体参数可以看F5里的keyword说明。

输入参数,第二个参数默认是firefox,不过我没装,就用ie吧。

以上只是一个简单的例子,没有详细说明每个步骤的 *** 作,只是初步介绍。后续再详细介绍

WinExec("E:\\QQEXE",SW_SHOW);

字符串改成你的exe路径和名字就可以了,注意反斜杠要转译(必须连续2个)

回复 0513zhang:两个函数的参数中,ShowCmd意义和写法是一样的

//ShowCmd 参数可选值:SW_HIDE = 0; {隐藏}

SW_SHOWNORMAL = 1; {用最近的大小和位置显示, 激活}

但第四个参数。。不就是我说的入口参数么。。对于自己的exe,形式自己定义,关键是在instance入口处要判断约定参数就可以了。

首先从对话框的按钮处理函数中获得mainframe指针

cmainframe pmain=(cmaimframe )afxgetapp()->m_pmainwnd;

然后获得相应视图指针cyourview pview=(cyourview )pmain->getactiveview();

最后获得视图对应的当前文档指针 cdocument pcurrentdoc =(cframewnd )m_pmainwnd->getactivedocument();

string str =Process GetCurrentProcess() MainModule FileName;//可获得当前执行的exe的文件名

string str =Environment CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径

//备注 按照定义 如果该进程在本地或网络驱动器的根目录中启动 则此属性的值为驱动器名称后跟一个尾部反斜杠(如 C:\ ) 如果该进程在子目录中启动 则此属性的值为不带尾部反斜杠的驱动器和子目录路径(如 C:\mySubDirectory )

string str =Directory GetCurrentDirectory();//获取应用程序的当前工作目录

string str =AppDomain CurrentDomain BaseDirectory;//获取基目录 它由程序集冲突解决程序用来探测程序集

string str =Application StartupPath;//获取启动了应用程序的可执行文件的路径 不包括可执行文件的名称

string str =Application ExecutablePath;//获取启动了应用程序的可执行文件的路径 包括可执行文件的名称

string str =AppDomain CurrentDomain SetupInformation ApplicationBase;//获取或设置包含该应用程序的目录的名称

   System Diagnostics Process GetCurrentProcess() MainModule FileName获取模块的完整路径

   System Environment CurrentDirectory获取和设置当前目录(该进程从中启动的目录)的完全限定目录

   System IO Directory GetCurrentDirectory()获取应用程序的当前工作目录 这个不一定是程序从中启动的目录啊 有可能程序放在C:\里 这个函数有可能返回C:\Documents and Settings\ZYB\ 或者C:\Program Files\Adobe\ 有时不一定返回什么东东 我也搞不懂了

  System AppDomain CurrentDomain BaseDirectory获取程序的基目录

  System AppDomain CurrentDomain SetupInformation ApplicationBase获取和设置包括该应用程序的目录的名称

lishixinzhi/Article/program/net/201311/12285

1

CString GetCurPath()

{

TCHAR exeFullPath[MAX_PATH];

CString strPath;

GetModuleFileName(AfxGetInstanceHandle(),exeFullPath,MAX_PATH);

strPathFormat("%s", exeFullPath);

if(strPathRight(1)!="\\") strPath += "\\";

return strPath;

}

2CreateDirectory(全路径字符串, NULL);

3

short CleanTmpFiles(CString strImagePath)

{

int nFiles=0;

CFileFind finder;

char tempFileFind[200];

sprintf(tempFileFind, "%s\\jpg", m_strImagePath);

BOOL IsFinded = (BOOL)finderFindFile(tempFileFind);

while(IsFinded)

{

IsFinded = (BOOL)finderFindNextFile();

if(!finderIsDots())

{

char foundFileName[200];

strcpy(foundFileName, finderGetFileName()GetBuffer(200));

if(!finderIsDirectory())

{

char tempFileName[200];

sprintf(tempFileName,"%s%s", strImagePath, foundFileName);

DeleteFile(tempFileName);

nFiles++;

}

}

}

finderClose();

return nFiles;

}

获取和设置当前目录的完全限定路径

string str = System Environment CurrentDirectory;

Result: C:\xxx\xxx

获取启动了应用程序的可执行文件的路径 不包括可执行文件的名称

string str = System Windows Forms Application StartupPath;

Result: C:\xxx\xxx

获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径 包含文件名

string str = System Diagnostics Process GetCurrentProcess() MainModule FileName;

Result: C:\xxx\xxx\xxx exe

获取当前 Thread 的当前应用程序域的基目录 它由程序集冲突解决程序用来探测程序集

string str = System AppDomain CurrentDomain BaseDirectory;

Result: C:\xxx\xxx\

获取应用程序的当前工作目录

string str = System IO Directory GetCurrentDirectory();

Result: C:\xxx\xxx

获取和设置包含该应用程序的目录的名称

string str = System AppDomain CurrentDomain SetupInformation ApplicationBase;

Result: C:\xxx\xxx\

获取当前进程的完整路径 包含文件名

string str = this GetType() Assembly Location;

Result: C:\xxx\xxx\xxx exe

获取启动了应用程序的可执行文件的路径 包括可执行文件的名称

string str = System Windows Forms Application ExecutablePath;

Result: C:\xxx\xxx\xxx exe

lishixinzhi/Article/program/net/201311/15184

以上就是关于如何从文件中获取文件路径 mfc全部的内容,包括:如何从文件中获取文件路径 mfc、MFC调用exe程序、急!!求懂MFC的大佬帮我解答。MFC单文档工具栏打开文件的路径是怎么获取的,求解。尽量详细点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9615026.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存