jjzjj

c++ - 尝试 CreateDirectory,将 char* 获取到 LPCWSTR 错误,愿意尝试另一个函数

我试过用谷歌搜索这个,有很多基于各种具体情况的答案,坦率地说,我比刚开始时更卡住了。事实是这些:语言:C/C++操作系统:WindowsIDE:VisualStudio2005我正在尝试使用CreateDirectory(在windows.h的#include之后)从我程序中的函数创建一个目录。据推测,第一个参数(路径)应该是一个char*。但是,当我尝试编译时,出现以下错误:errorC2664:'CreateDirectoryW':cannotconvertparameter1from'char*'to'LPCWSTR'我了解到,我在UNICODE和ANSI之间存在某种问题。解决方

c++ - 无法将参数 1 从 'char *' 转换为 'LPCWSTR'

我正在尝试加载BMP文件AUX_RGBImageRec*LoadBMP(char*Filename)//LoadsABitmapImage{FILE*File=NULL;//FileHandleif(!Filename)//MakeSureAFilenameWasGiven{returnNULL;//IfNotReturnNULL}File=fopen(Filename,"r");//CheckToSeeIfTheFileExistsif(File)//DoesTheFileExist?{fclose(File);//CloseTheHandlereturnauxDIBImageLoa

c++ - 无法将参数 1 从 'char *' 转换为 'LPCWSTR'

我正在尝试加载BMP文件AUX_RGBImageRec*LoadBMP(char*Filename)//LoadsABitmapImage{FILE*File=NULL;//FileHandleif(!Filename)//MakeSureAFilenameWasGiven{returnNULL;//IfNotReturnNULL}File=fopen(Filename,"r");//CheckToSeeIfTheFileExistsif(File)//DoesTheFileExist?{fclose(File);//CloseTheHandlereturnauxDIBImageLoa

c++ - 'CreateDirectoryW' : cannot convert parameter 1 from 'const char *' to 'LPCWSTR' in OpenCV 2. 4.5 和 VS 2010

我正在尝试从openCV2.4.5到VisualStudio2010(基于VC++)的示例代码bagofwords_classification.cpp。但是我发现了错误代码:errorC2664:'CreateDirectoryW':cannotconvertparameter1from'constchar*'to'LPCWSTR'你能帮我解决那个问题吗?谢谢。:)更新v1:staticvoidmakeDir(conststring&dir){#ifdefinedWIN32||defined_WIN32CreateDirectory(dir.c_str(),0);#elsemkdir

c++ - Visual Studio 2010 Arduino cpp 错误 : argument of type "char *" is incompatible with parameter of type "LPCWSTR"

我正在尝试设置一个arduinouno用于与visualstudio2010中的C++程序进行串行端口通信。我正在使用此处找到的代码:http://playground.arduino.cc/Interfacing/CPPWindows不幸的是,.cpp文件在第9行为变量“portName”提供了以下消息:错误:“char*”类型的参数与“LPCWSTR”类型的参数不兼容我不明白这个错误消息,并尝试了一些不同的方法来修复它。任何帮助将不胜感激! 最佳答案 鉴于您问题中的代码链接,问题似乎出在这里:Serial::Serial(cha

c++ - 如何合并两个 LPCWSTR?

我有两个LPCWSTR变量。我想创建一个新变量,它将具有第一个和第二个变量的值。我试过了,但没用。LPCWSTRd=L"sd";LPCWSTRf=L"f";LPCWSTRdf=d+f;我尝试这样做时遇到此错误。1IntelliSense:expressionmusthaveintegralorenumtype是否有可以组合两个LPCWSTR的函数? 最佳答案 在C++中,使用std::string来处理字符串通常是个好主意。在您的情况下,它可能看起来像:LPCWSTRd=L"sd";LPCWSTRf=L"f";std::wstrin

转换到 LPCWSTR?

我正在尝试创建一个(非常)简单的Win32GUI程序,但出于某种原因,编译器(我使用的是VC++2008Express)要我手动将每个字符串或char*类型转换为LPCWSTR:我每次执行此操作时都会收到此编译器错误,例如,我收到“Hello”和“Note”的错误:错误C2664:“MessageBoxW”:无法将参数2从“constchar[22]”转换为“LPCWSTR”请告诉我,我不必每次都执行此操作....代码如下:#includeintWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,

c++ - 如何在 C++ 中连接两个 LPCWSTR

我正在尝试使用MoveFile(LPCWSTRexisting,LPCWSTRnew)函数。我想通过连接不同的数据(例如:根目录和潜在文件名)来实现其中一个目录(由LPCWSTR表示)。尽管进行了数小时的研究,我还是不知道该怎么做。感谢任何帮助。 最佳答案 听起来您正在尝试将表示路径元素的两个LPCWSTR组合成组合路径。如果是这种情况,那么您想使用PathCombine方法LPCWSTRroot=...;LPCWSTRname=...;WCHARcombined[MAX_PATH];if(PathCombineW(combined

go - CGO:在 LPCWSTR 和字符串之间转换

我正在为一个库编写CGO绑定(bind),该库将LPCWSTR用于其所有字符串类型。如何将C.LPCWSTR转换为string,反之亦然? 最佳答案 您应该能够将LPCWSTR“转换”为[]uint16,并使用utf16包解码字符//takeaC.wstrpointer,andconvertittoagoslice//`sz`isthelengthoftheLPCWSTRwstr:=(*[1您通常不希望将Go指针传递到您的C代码中,因此当从字符串转换为LPCWSTR时,您需要在C中分配内存。从Go字符串转换的解决方案s可能看起来像:

go - 如何在 Go 和 Swig 中使用 LPCWSTR?

我正在尝试使用Swig将C库与Go结合使用。这是简化的代码,我知道我可以使用cgo,但我需要在Swig中使用带有LPCWSTR参数的函数。我在https://github.com/AllenDang/w32/blob/c92a5d7c8fed59d96a94905c1a4070fdb79478c9/typedef.go上看到了LPCWSTR相当于*uint16所以syscall.UTF16PtrFromString()似乎是我需要的,但是当我运行代码。我想知道我是否应该使用SwigcptrLPCWSTR。libtest.c#include#include#include"libtest