【C#遗补】获取应用程序路径之System.IO.Directory.GetCurrentDirectory和System.Windows.Forms.Application.StartupPath的区别

原文:【C#遗补】获取应用程序路径之System.IO.Directory.GetCurrentDirectory和System.Windows.Forms.Application.StartupPath的区别

.Net Framework中,System.IO.Directory.GetCurrentDirectory()方法用于获得应用程序当前工作目录

如果使用此方法获得应用程序所在的目录,应该注意:System.IO.Directory.GetCurrentDirectory()方法获得的目录路径随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变(切换工作目录)

一般情况下,应该使用System.Windows.Forms.Application.StartupPath或System.AppDomain.CurrentDomain.BaseDirectory来获得应用程序所在的目录

时间: 2024-11-10 07:30:11

【C#遗补】获取应用程序路径之System.IO.Directory.GetCurrentDirectory和System.Windows.Forms.Application.StartupPath的区别的相关文章

android中获取当前程序路径

(1)android中获取当前程序路径 getApplicationContext().getFilesDir().getAbsolutePath() (2)android取已安装的程序列表 List<PackageInfo> packageInfoList =  getPackageManager().getInstalledPackages(0); (3)对安装路径的说明 http://developer.android.com/guide/appendix/install-locatio

VC中使用GetModuleFileName获取应用程序路径

  .\\与API函数GetModuleFileName获取应用程序目录有何不一样? 采用.\\也能获得应用程序目录,采用GetModuleFileName也能获得,二者有何不同? 一样!一个是相对路径,一个是绝对路径 .\\是的到应用程序的当前目录,但当前目录不一定等于应用程序执行文件的所在目录,一个应用程序被启动时,当前目录是可以被任意设置的.GetModuleFileName()得到模块的完整路径名,例如,你载入c:\windows\system32\a.dll,得到模块句柄h,则你可以用

windows和linux下获取当前程序路径以及cpu数

[cpp] view plaincopy   #ifdef WIN32   #include <Windows.h>   #else   #include <stdio.h>   #include <unistd.h>   #endif      #include <assert.h>          std::string getCurrentAppPath()       {   #ifdef WIN32           char path[MAX

WPF获取程序路径的一些方法

原文 http://hi.baidu.com/zido2/item/204743c337dd2e0d0bd93a74 1.   System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName     获取模块的完整路径.2.   System.Environment.CurrentDirectory     获取和设置当前目录(该进程从中启动的目录)的完全限定目录.3.   System.IO.Directory.GetCur

C#获取程序路径的方法中需要注意的地方

C#获取程序路径的方法中需要注意的地方(版本1) 获取运行程序路径的方法主要有以下7种: System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName他获取的是Module的文件名,如果在VS2008的调试环境中,获取的是 [程序名].vshost.exe的完整文件名. System.Environment.CurrentDirectorySystem.IO.Directory.GetCurrentDirectory()这两

C# webForm 文件访问与获取应用程序当前路径

winfom获取应用程序当前路径 system.diagnostics.process.getcurrentprocess().mainmodule.filename; //获取新的 process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名). //返回 e:c#学习获取当前路径获取当前路径bindebug获取当前路径.exe system.appdomain.currentdomain.setupinformation.applicationbase; //获取和设

Asp.NET获取文件及其路径代码总结

[相对路径]  Request.ApplicationPath /src Path.GetDirectoryName(HttpContext.Current.Request.RawUrl ) //src//Xiaoshe Context.Request.Path /src/Xiaoshe/Xiaoshe_New.aspx Context.Request.CurrentExecutionFilePath /src/Xiaoshe/Xiaoshe_New.aspx Context.Request.F

C# 调用dll获取dll物理路径的方法

写类库项目时,经常会有某些特殊业务需要用到服务器端的物理路径,使用传统的System.IO.Directory.GetCurrentDirectory()方法返回的则是WINNT\System32目录,这个一般不能满足正常的业务需求,而要得到具体运行DLL所在的物理目录可以通过Assembly.GetExecutingAssembly().CodeBase属性来取得,具体参考方法如下: /// <summary> /// 获取Assembly的运行路径 /// </summary>

VC读注册表获取安装程序

Windows 系统中,安装程序都可以在注册表 HKEY_LOCAL_MACHINE\SoftWare\Microsoft\Windows\CurrentVersion\Uninstall获取,并且xp.vista .win7.win8都一样 打开注册表命令:regedit,依次展开上述注册表路径,安装程序列表如下图: 获取系统安装程序列表: // 获取系统安装程序列表 BOOL CMyListCtrlTestDlg::AllRegKey(HKEY hKey, LPCTSTR szDesKeyI