我正在从我下载的一些代码中重写一个 C++ 方法。该方法最初将 PCWSTR 作为参数,然后提示用户输入文件名。我将方法修改为采用两个参数(均为 PCWSTR)而不提示用户。我已经在其他地方生成了文件列表。我正在尝试使用迭代文件列表的方法中的两个参数调用我的新(修改后的)方法。
原始方法提示用户使用 StringCBGetsW 命令进行输入。像这样...
HRESULT tst=S_OK; //these are at the top of the method
WCHAR fname[85] = {0}; //these are at the top of the method
tst = StringCbGetsW(fname,sizeof(fname));
wchar fname被传递给更远的另一个迭代方法。当我查看该方法时,它说它是LPCWSTR类型;我假设它可以改为使用WCHAR。
但它不能做的是拿方法得到的PCWSTR。我的最终目标是尽量不提示用户输入文件名,而是使用之前在另一种方法中迭代的文件名。
tl;博士。我有一个 PCWSTR,它需要转换为 WCHAR。我不知道 WCHAR [] 是什么或如何用它做任何事情。包括尝试做一个printf来看看它是什么。
PS ...我知道有更简单的方法可以移动和复制文件,我尝试使用程序来完成这项工作是有原因的。