小编use*_*146的帖子

获取.exe目录中列出的所有文件,不知道位置

我想我的问题是这样的 - 如何将exe位置的目录作为LPCWSTR获取,以便我可以将其输入到我的代码中

#include <iostream>
#include <Windows.h>
int main(int argc, char **argv)
{
WIN32_FIND_DATA a;
HANDLE swap = FindFirstFile(/*(LPCWSTR)__exe_directory__*/,&a);
if (swap!=INVALID_HANDLE_VALUE)
{
    do
    {
        char *sptn = new char [lstrlen(a.cFileName)+1];
        for (int c=0;c<lstrlen(a.cFileName);c++)
        {
            sptn[c]=char(a.cFileName[c]);
        }
        sptn[lstrlen(a.cFileName)]='\0';
        std::cout<<sptn<<std::endl;
    }
    while (FindNextFile(swap,&a));
}
else std::cout<<"undetected file\n";
FindClose(swap);
system("pause");
}
Run Code Online (Sandbox Code Playgroud)

它会返回目录中列出的文件而不会出错.我知道我的代码已经在给定目录的情况下工作,我已经测试了它.

c++ directory winapi

4
推荐指数
1
解决办法
493
查看次数

amp - C++ Assistor

是否可以使用&amp;C/C++中调用的内容为指针指定参数?

基本上我要说我有一个功能:

int vba (unsigned long *a, unsigned long *b){.....}
Run Code Online (Sandbox Code Playgroud)

我可以使用这个神秘的&amp;调用向参数声明非指针值吗?我正在读这本书,而作者正在使用它,但他没有宣布它是什么,或者它是什么.我搜索了"& C++ call",但我没有得到任何结果.

那么他指定一个非ptr赋值在其他函数中使用它,如下所示:

int vca ()
{
    unsigned long c, d;
    vba(&amp;c, &amp;d);
   //etc ...
}
Run Code Online (Sandbox Code Playgroud)

这是我感到困惑的地方,我不知道刚刚发生了什么,或者那个叫做的是什么,他是如何分配一个非指针的指针......虽然我以前从未听说过它,但看起来非常棒.任何人都在想详细说明这是什么,或者它是如何可能的?

此外,当我把它放入我的代码时,它在错误日志中说:"Intellisense:identifier"amp未定义"?这是我真正丢失的地方,因为编译器amp以蓝色突出显示调用,那么它是如何未定义的?

c c++ pointers visual-studio

4
推荐指数
1
解决办法
759
查看次数

程序无法运行 - 它会打开和关闭

我的主程序有一个问题,在运行程序后我打开的所有调用之后它才打开然后关闭.它在我的代码或任何东西中都没有发现任何错误,所以我尝试创建一个新项目并且它做同样的事情没有错误.

我甚至试过示例代码:

int APIENTRY WinMain (HINSTANCE ...)
    ShellExecute(NULL, (LPCWSTR)"open", (LPCWSTR)"cmd.exe", NULL, NULL, SW_SHOW);
Run Code Online (Sandbox Code Playgroud)

它仍然只是打开和关闭.这是什么问题?如有必要,我可以提供输出日志,但我不知道.

c c++ winapi visual-studio

0
推荐指数
1
解决办法
127
查看次数

标签 统计

c++ ×3

c ×2

visual-studio ×2

winapi ×2

directory ×1

pointers ×1