代码之家  ›  专栏  ›  技术社区  ›  Cute

我的代码获取当前页面路径有什么问题?

  •  -1
  • Cute  · 技术社区  · 17 年前

    我的visualstudio vcproj文件位于C:\vsproj\example\test\test.vcproj

    在这个路径下,我有一些其他文件,如e test.cpp文件,还有一个dll test.dll。

    所以完全在路径c:\ vsproj\ example\ test下

    1)test.vsproj 2)test.dll 3)test.cpp

    通常是为了得到我们使用的cuurent文件夹路径,所以我应用了这个技术

    驻留在test.cpp文件所在位置的dll路径

    现在在test.cpp中,我在其他地方写过

    字符串str=“..\\ test.dll” 获取test.dll路径。但我没有把dll路径放入

    我的想法是,我必须在变量str=“c:\vsproj\example\test\test.dll”中获取路径

    但是我得到了“.\Test.dll”WAT是错误的,你能纠正我吗?? 变量str;如何获取在这种情况下…

    5 回复  |  直到 17 年前
        1
  •  1
  •   Matthew Iselin    17 年前

    string str=“.\test.dll”以获取 test.dll路径。但我不明白 进入的dll路径

    我的想法是我必须走进去 变量 str=“c:\vsproj\example\test\test.dll”

    但是我得到了“.\test.dll”wat 你能纠正我吗??可变str; 如何获取其中的dll路径 脚本。。。

    它做的正是你要求它做的。你的样子 希望 这样做是不可能实现的。

    您需要获取当前工作目录并将其前置到“\test.dll”,而不仅仅是指定“\test.dll”。

        2
  •  0
  •   ufukgun    17 年前

    检查filemon程序。它会告诉你代码试图搜索的地方,并告诉你哪里做错了。

        3
  •  0
  •   erelender    17 年前

    字符串与路径无关。它怎么能理解你想要什么?只是一堆信而已。

    如其他人所建议的,尝试使用getcwd并在其末尾附加“\test.dll”。

        4
  •  0
  •   MSalters    17 年前

    你要找的功能是 GetFullPathName() . 它在C字符串上工作,而不是C++字符串。看看链接文章中的例子。 (您可以安全地忽略关于多线程应用程序的恐慌之处。)。单线程应用也存在同样的问题。如果当前目录更改, ..\xyz\ 也有变化。)

        5
  •  0
  •   Inverse    17 年前

    你可以使用 _getcwd(char* buf, int len) 要获取当前工作目录: