【问题标题】:Difference between Current Directory and Working Directory in WindowsWindows中当前目录和工作目录的区别
【发布时间】:2013-02-26 08:45:03
【问题描述】:

Windows 中的当前目录和工作目录有什么区别?如何更改 Notepad++ 或 Mozilla Firefox 等应用程序的工作目录?

【问题讨论】:

    标签: windows working-directory


    【解决方案1】:

    当前目录和工作目录只是同一事物的两个不同名称。每个进程都维护一个当前目录。

    当前目录在启动时被指定为用于创建进程的任何函数的参数,例如CreateProcess。您如何更改您的应用程序之一的当前目录?好吧,这取决于您如何启动它。

    • 如果从快捷方式启动,请更改快捷方式的属性以指定当前目录。
    • 如果您从命令提示符启动,当前目录将是您启动命令提示符时的当前目录。
    • 如果您首先调用CreateProcess,则工作电流将是您在lpCurrentDirectory 参数中传递给CreateProcess 的任何值。如果传递NULL,则将使用父进程的当前目录。

    【讨论】:

    • 当我从快捷方式启动 Notepad++ 时,我在 Process Explorer 中看到了当前目录。我将其视为 C:\Windows。当我执行 createProcess 并在 lpCurrentDirectory 字段中设置一些有效的目录(比如 D:\abcd)时,它仍然显示 C:\Windows。它不应该显示 D:\abcd 吗?
    • 好吧,记住一个进程可以随时修改它自己的当前目录。也许 npp 正在这样做。我不知道。您的CreateProcess 通话也可能存在缺陷。
    • 谢谢 :)... 很抱歉,我无法为您的答案投票,因为我是 Stackoverflow 的新手,我的声誉低于 15 分。一旦我得到它们,我会这样做。
    • @DavidHeffernan, Re "如果从快捷方式启动,请更改快捷方式的属性以指定当前目录";但是你是怎么做到的呢?
    • @Pacerier 右键单击​​快捷方式,选择属性,然后编辑 Start in 字段。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-22
    • 2013-11-27
    • 1970-01-01
    相关资源
    最近更新 更多