问题标签 [lpwstr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何连接 char* 和 LPWSTR 字符串?
我想使用 MoveFile 函数,该函数使用两个 LPWSTR 参数,但我有一个 char* 和 LWSTR,如何连接它们?
c++ - 这个 typedef 涉及 LPWSTR 是什么意思?
我正在尝试寻找 LPWSTR 的替代品来将项目移植到 gcc。
什么是空终止?如果我做这样的事情会安全吗:
c++ - 无法将 CHAR 转换为 LPWSTR
我在 Visual Studio 2015 中遇到编译错误,我正在尝试将char
数据转换为LPWSTR
. 我可以吗?还是仅适用于字符串类型?
这是我的一段代码:
在发布我的问题之前,我在:
我没有找到我的案子:(
c++ - LPTSTR 只包含一个字母
我正在为应用程序创建一个 DLL。应用程序调用 DLL 并接收长度为 8 到 50 的字符串。
我遇到的问题是只显示应用程序收到的任何消息的第一个字母。
下面是 GetMethodVersion 函数。
项目设置设置为 Unicode。经过一些研究,我相信 Unicode 格式及其功能存在问题。谢谢你提供的所有帮助。
c++ - 无法将 Char 转换为 LPWSTR
以下代码
}
在 VisualStudio(缓冲区)的第二个参数处给我错误:
类型“char *”参数与类型参数“LPWSTR”不兼容
(从意大利语翻译,我有意大利语的 vs,希望你理解)并且不能在 2 参数中将 Char 转换为 LPWSTR
这段代码可以用 code::blocks 和 dev c++ 很好地编译,但在 vs 中它没有
c# - 从 C# 应用程序将参数编组到 C++ API 函数调用
我正在从我的 C# 应用程序中的 dll 调用 C/C++ 函数。我一生都无法弄清楚如何正确编组数据。
这是我试图调用的 API 函数的信息:
LONG LoginDialog(HWND hWndParent,LPCWSTR lpctstrTitle,ULONG ulFlags,LPWSTR lptstrDataSource,LONG lDSLength,LPCWSTR lpctstrUsername,LPCWSTR lpctstrPassword,LPCWSTR lpctstrSchema);
参数:
[in] hWndParent 指定要显示的登录对话框的父窗口句柄。
[in] lpctstrTitle 指向以空字符结尾的字符串的指针,该字符串指定要显示的登录对话框的标题。指定 NULL 指针以使用默认登录对话框标题。
[in] ulFlags 指定登录操作和对话框样式掩码。它可以是 0 或登录对话框样式标志中列出的标志的按位或组合。
[in,out] lptstrDataSource 指向以 null 结尾的字符串缓冲区的指针,指定要登录的数据源的名称。在输出时,此缓冲区接收用户登录的数据源的名称(以防数据源名称在登录对话框中更改)。
[in] lDSLength 指定由 lptstrDataSource 指定的字符串缓冲区的长度。
[in] lpctstrUsername 指向指定用户名的以 null 结尾的字符串的指针。
[in] lpctstrPassword 指向指定密码的以空字符结尾的字符串的指针。
[in] lpctstrSchema 指向以 null 结尾的字符串的指针,指定架构文件的完整路径。如果不需要架构,请指定 NULL 指针。
这是我的代码:
我很确定我将第 4 个参数编组错误(LPWSTR lptstrDataSource)。我尝试了在网上找到的不同答案,但到目前为止没有一个对我有用。
我也首先收到此警告。抱歉没有澄清:
托管调试助手“LoadFromContext”检测到问题..
附加信息:程序集是使用 LoadFrom 上下文从“dll 位置”加载的。使用此上下文可能会导致序列化、强制转换和依赖解析的意外行为。在几乎所有情况下,建议避免使用 LoadFrom 上下文。这可以通过在全局程序集缓存或 ApplicationBase 目录中安装程序集并在显式加载程序集时使用 Assembly.Load 来完成。
c++ - 在 C++ 中的方法中将 LPWSTR 作为引用传递
我将 LPWSTR 作为方法中的参考传递。该值保留在方法中,但在被调用函数中,它会丢失。我怀疑我需要给 LPWSTR 一些内存,但我无法弄清楚这样做的方法。这就是我的代码的样子:
我调试发现 DecodeUrlOut 的值为 L""。
c++ - 以前从未见过这种语法,谁能解释一下..... return L""
很难在网上找到关于以下语法的解释,并且在这些论坛中搜索 L"" 并没有提供任何结果。我在 Qt5 中调试一个太长而无法粘贴到此处的应用程序。我正在尝试解决最后一个错误,该错误指向包含 --> return L""; 的代码行。<--。它是下面函数中的最后几行之一。我收到的编译器错误是......
C2440:'return':无法从 'const wchar_t[1]' 转换为 'LPWSTR'
我的第一个问题是这是什么意思 --> L"" <-- ?
最后,我该如何解决这个编译器错误?
我的假设是因为 wchar_t[1] 是 1 个字节,而 LPWSTR 是 2 个字节,它无法转换???我不确定这是否重要,但我在 Qt5 的工具栏中出现另一个错误,说“错误:无法使用“UTF-8”编码解码“myfile.cpp”。无法编辑”。它给了我一个选择编码的选项。我确信这是因为这段代码是用旧版本的 Qt 编写的,现在因为我正在用 Qt5 重建所有这些代码,所以发生了一些变化。同样,我不确定这是否与我上面的两个问题有关,但我想全面了解正在发生的事情。
c++ - C ++:WinCE7中带有套接字的成员变量顺序
我正在为 WinCE7 编写一个程序,并且我正在尝试设置一个静态库类,该程序将用于 TCP 通信。因此,不同的成员变量顺序以不同的方式卡住了程序。部分代码:
标题:
资源:
在这种情况下,程序在调用 recvfrom 函数时完全冻结。但是,如果我切换标题中最后 2 个成员变量的顺序,如下所示:
然后程序将继续接收字节,但在稍后的几行方法执行期间尝试使用字符串时,它将再次冻结,如下例所示:
在我的测试中,一切都运行得非常好,通信代码在主程序中(我没有使用 LPWSTR 字符串)。
我确定这是我缺少的一个愚蠢的琐碎概念,但我无法解决这个问题。
我感谢任何可以提供帮助的人。
c++ - C++ #define LPWSTR?
好的,我的程序有问题。我之前提出了一个问题,但没有人真正理解我的问题,所以这次我尝试了一种新的方法。
如果你好奇这是我的问题:
我的程序以 的形式接受参数
char* argv[]
,并且我无法创建指向正在argv[1]
使用的任何内容的指针LPWSTR
,因为它只指向const wchar_t*
对象。
这是我试图解决我的问题的新事物(我已经尝试了多种方法,但我需要知道如何去做我在想的事情,或者如果可能的话)
基本上,我的想法是#define
某种函数,它接受任何内容并用该值argv[1]
定义 a 。const wchar_t*
像这样的东西:
我不确定这是做我想做的事情的正确方法(或者即使这是可能的)......
如果您有更好的方法来解决我的问题,请(请)告诉我如何帮助我,我一直在考虑这个问题很长时间!
我的程序说明:
我正在制作一个接收参数的程序。参数是驱动器的名称,例如“F:”。
CreateFile
然后它使用带有驱动器号的函数。如果你去这里,看到函数的第一个参数,我想你会明白我的意思......问题是我要制作一个 LPWSTR,我需要一个 const wchat_t* 对象......我希望这次我的问题很清楚,上次人们并没有真正理解我想要做什么。
无论如何,谢谢!编辑 1:这是我的程序的求解行(这是我必须做的工作,没有参数)(我在这里使用了一个固定值)
这是带参数的(不起作用)
^ 这显示了我想要做什么
编辑 2:我将其更改CreateFile
为CreateFileA
,这是它给我的 eroor 代码(驱动器 D 是 USB,它不是硬盘驱动器)
因此,除非我输入错误的路径来输入路径,否则它总是会给我错误。我想我会尝试另一种方法来解决问题,或者如果有人知道为什么会发生错误,请告诉!