问题标签 [getlasterror]
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 - CryptDecodeObjectEx 错误标签错误 (0x8009310b)
我有一个 .cer 文件。我可以通过 ReadFile() 函数读取和写入缓冲区。现在我有了缓冲区和 datalen。
我使用该缓冲区和 len 来调用 CryptDecodeObjectEx() 函数,如下行
但是当我通过调试运行它时,我通过 GetLastError() 函数得到 0x8009310B 错误代码。
我该如何解决?谢谢你的建议。
附加信息
- 如果我使用 X509_ANY_STRING 而不是 X509_PUBLIC_KEY_INFO;有用。但它没有填充我的 publicKeyInfo 结构。因此,我无法在其中获取公钥。
- 我有一个 DER 格式的证书。
c++ - InternetQueryOption(..) 失败并且 GetLastError() 总是返回 122 (ERROR_INSUFFICIENT_BUFFER)
在这个函数中,我使用带有选项INTERNET_OPTION_URL的InternetQueryOption ()来查找句柄 hfile 的 URL。结果将在url[]中返回,在len中返回长度。
但函数总是失败,GetLastError () 总是返回 122 (ERROR_INSUFFICIENT_BUFFER)。
据此,当我使用长度为 3000 的缓冲区时,IE 中可能的最大 URL 长度为 2083。那么这个错误怎么可能发生?我什至做了 url[] global,仍然是同样的错误。
现在,根据 IntenetQueryOption()文档,如果 GetLastError() 返回 ERROR_INSUFFICIENT_BUFFER,则变量len指向保存请求信息所需的字节数(在这种情况下,信息是 URL)。而且这个值总是小于 100。那么 URL 怎么会不适合ulr[]呢?
这种奇怪行为的原因可能是什么?请帮忙。
c++ - CreateFile() 串行通信问题
我正在尝试通过我的 USB 端口(名为 COM15)进行一些串行通信,但出现错误。这是发生错误的代码:
每次编译程序时,打开的串口的句柄== INVALID_HANDLE_VALUE。我阅读了 CreateFile() msdn 文档以使用 GetLastError() 来获取“扩展错误信息”。现在...当我运行代码时,GetLastError() 返回值:2
在 GetLastError() 的 msdn 文档中,它说:
“设置最后一个错误代码的每个函数的文档的返回值部分记录了该函数设置最后一个错误代码的条件。”
我尝试在 CreateFile() msdn 文档的返回值部分中查找“2”的含义,但在任何地方都找不到含义。
问题:
1) 为什么会这样:myPortHandle == INVALID_HANDLE_VALUE?
2) 另外,如果有人可以指导我到我需要查看 msdn 文档以找到 GetLastError() 返回的“2”的含义,那将是非常棒的!
internet-explorer - InternetReadFile API 将读取的数据保存在哪里?
我正在尝试挂钩 API InternetReadFile 和 InternetWriteFile。InternetReadFile 从提供给它的句柄中读取数据(根据文档)。这些数据存储在哪里?在内存/RAM中?
InternetWriteFile 将数据写入打开的 Internet 文件(根据文档)。这是否意味着它将数据存储在磁盘中?也许在临时互联网文件文件夹中?
当我在 Hook_InternetReadFile 中调用 InternetQueryOption 函数(选项=INTERNET_OPTION_DATAFILE_NAME)时,它会在临时互联网文件文件夹中返回一个文件名。而从 Hook_InternetWriteFile 调用该函数时会失败,错误代码为 12028 (=ERROR_INTERNET_ITEM_NOT_FOUND)。这是否意味着 InternetReadFile 将数据写入磁盘?
我很困惑。请帮忙。
winapi - GetLastError() 在调用 SwapBuffers(HDC) 后返回 ERROR_INVALID_HANDLE / 6
每当我尝试调用 SwapBuffers() 时,GetLastError() 都会返回 6 / ERROR_INVALID_HANDLE。有一段时间我试图通过以不同的方式重写这段代码来解决这个问题,试图找到不同的错误来源,并通常看看我可能做错了什么。但是,我还没有得出一个关于是什么导致这种情况或我能做些什么来解决这个问题的单一结论。
我也认识到当我调用glUseProgram()和glVertexAttribPointer()等OpenGL函数时,glGetError()返回1282 / GL_INVALID_OPERATION。
游戏状态的代码(我称之为 gl 函数):
c++ - 抛出异常是否会影响 errno 或设置最后一个错误代码
假设Foo
构造函数不调用任何影响errno
或类似GetLastError()
Windows 上的状态代码的函数,是否可以保证
不影响任何这些值。也就是说,我可以将错误代码的读取推迟到 Foo 的构造函数吗?如果标准没有指定,我最感兴趣的是 GCC、GNU/Linux 和 MinGW-SJLJ 变体的行为。
sockets - WSAGetLastError 未通过 Windows 应用认证工具包测试
根据WSAGetLastError()
文档,Windows 8.1 上的 Windows Store 应用程序支持它。
但是,我从 Windows 应用程序认证工具包 - 测试结果中收到以下错误:
-此应用程序类型不支持 wsock32.dll 中的 API WSAGetLastError
我正在 Windows 8.1 中开发 Windows 应用商店应用程序。
我错过了什么吗?
.net - 说明此功能可能会出现哪些问题(如果有)
设想
在 P/Invoking 时,我认为通过设计一个调用该函数的通用函数来简化/减少大量代码可能是一个好主意,然后它会检查GetLastWin32Error
我正在使用这段代码:
我认为提高效率的事情应该是 API 函数应该能够设置最后一个错误,并且,当函数能够做到这一点时,我应该将SetLastError
属性设置为True,当然SetLastError=True
如果 a 将被忽略该函数自然不会设置最后一个错误,所以无论如何,无论我将传递给这个通用SafePinvoke
函数什么样的函数,它都不会给出“误报”,或者至少我认为不会。
那么,一个使用示例应该是这样的:
首先,我们寻找一个管理最后一个错误的 API 函数,例如FindWindow
其次,我们在代码中添加定义,
/li>SetLastError
在签名中设置属性。最后,我们使用它。
/li>
此时我们可以看到一切似乎都按预期工作,如果找到窗口,它将返回一个非零Intptr,如果没有找到窗口,它将返回一个Intptr.Zero,并且,如果函数因为空而失败字符串,它会抛出一个Win32Exception
错误代码123,它指的是:
ERROR_INVALID_NAME
一切似乎都很好。
问题
我需要这样说来论证我的问题的原因,我不会造成任何负面影响,但发生的事情是一些非常有经验的程序员说我的函数不安全,因为我对 GetLastWin32Error 的很多事情都错了,在这个线程:
我的目的是从我的错误中吸取教训,但为此,首先我应该遇到错误的证据,而我没有找到它。
我想改进或在需要的情况下完全删除并重新考虑SafePinvoke
上面通用函数的方法,如果它在“X”情况下真的不能按预期工作,只是我想看看并了解可能是什么情况,通过提供可以测试以证明错误/冲突的真实代码示例,那么,我的问题是:
有人可以用一个 API 函数的真实代码示例来说明,当通过SafePinvoke
上面的函数时,它可能会给出“误报”错误或其他类型的冲突?
有人可以指导我并解释我的SafePinvoke
功能是否真的安全,或者不安全,或者是否可以改进,以及,提供可以测试的代码示例?
我将非常感谢所有可以帮助我改进这种方法的信息,或者了解该方法在某些情况下确实行不通,但是请给出一个代码示例来演示它。
fopen - fopen 返回 null 和 getlasterror 返回 997(error_io_pending_
我使用 fopen(filepath, "rb"),但 fopen 返回 NULL,
和 GetLastError() 返回 997 (ERROR_IO_PENDING)。
我在谷歌搜索了这个问题,但我找不到任何东西。
请帮我。
createfile - GetLastError() 返回值 2
一个非常基本的问题,我无法理解为什么我会在最简单的 Windows 系统编程书籍示例中得到错误 2。我贴出来源:
你能帮我吗?我正在使用 MS VSc++ 2010 SP 1 谢谢大家。