草庐IT

function-handle

全部标签

c++ - 将 HANDLE 转换为文件描述符

我有一个像这样的句柄:HANDLEhPipe=CreateNamedPipe(...)是否可以将hPipe转换为文件描述符(int)?我需要这个,因为我已经在C++中实现了一个代码来使用OpenSSL来处理TLS。这对TCP套接字来说就像一个魅力,但我真的需要在Namedpipe上使用它。OpenSSL的函数SSL_set_fd(SSL*ssl,intfd)只接受FileDescriptor,它是int,而不是HANDLE。注意:我也试过使用下面的函数,但没有用(返回3):intfd=_open_osfhandle(reinterpret_cast(hPipe),0);

c++ - SDL2 undefined reference to several functions with MinGW

我有以下项目目录结构:/program1/bin/include/SDL2/lib/resources/sourcemakefile我在这里阅读了很多关于这个问题的问答。但我真的不明白这是怎么回事。我遵循了文章中的所有步骤。我使用的是Windows764位,我从i686-w64-mingw32粘贴中获得了包含文件和lib文件。如上所述,我将这些文件放在我的目录中。我在source目录中的简单ma​​in.cpp代码是:#include#include"SDL.h"intmain(intargc,char*argv[]){if(SDL_Init(SDL_INIT_VIDEO)!=0){s

c++ - 错误 : no matching function for call to 'QLabel::text(QString&)'

我尝试制作文件浏览器,但出了什么问题这是我的mainwindow.cpp#include"mainwindow.h"#include"ui_mainwindow.h"#includeMainWindow::MainWindow(QWidget*parent):QMainWindow(parent),ui(newUi::MainWindow){ui->setupUi(this);}MainWindow::~MainWindow(){deleteui;}voidMainWindow::on_pushButton_4_clicked(){QStringfileName=QFileDialog

windows - puppet 代理 : provider git is not functional on this host

这几天我一直在尝试解决这个问题,但还没有成功,希望你能帮助我:我要做的是每天将公司git存储库的特定分支克隆到服务器上的特定(windows)虚拟机。为了学习,现在我只是想在我的桌面上的一个文件夹中克隆master分支。两个重要的观察结果:1-我知道puppet代理上安装了git2-存储库没有密码,私钥(ssh)在windows代理上分配得很好。现在我有代码:vcsrepo{"C:\{Nameofthewinagentuser}\Desktop\folder":ensure=>present,provider=>git,source=>'git@scm.example.com.br:c

windows - 为什么使用 GetFileSizeEx() 时会出现 "Invalid handle"错误,文件标记为只读?

当我在只读文件上使用我的Delphi6应用程序中的WindowsAPI调用GetFileSizeEx()时,我收到操作系统错误代码6(“无效文件句柄”)。如果我从文件中删除只读属性,错误就会消失。为什么我会收到该错误,有没有办法对只读文件使用该调用或类似调用?相关代码如下:functionGetFileSizeEx(hFile:THandle;varFileSize:Int64):BOOL;stdcall;external'kernel32.dll'name'GetFileSizeEx';functioneasyGetFileSize(theFileHandle:THandle):In

c - HANDLE - 文件句柄和目录句柄结构

语言:C操作系统:Windows我的应用程序是用nt级别的api构建的,必须操作文件和目录句柄。在Zwopenfile或zwcreate文件上,我得到一个HANDLE作为结果。通常HANDLE的值类似于0x00000024、28,2c...等。当我将其转换为LPBYTE以查看内容时。VisualStudio显示“无法评估表达式”。我了解到从创建/打开文件api返回的HANDLE不是指向内存位置的指针。但是,Windows使用该值并执行文件操作。Ntquerydirectory对象为我提供了有关句柄的信息。然而,Windows是如何实现这个功能的还不得而知。任何人都可以阐明它。

Windows32 API : "mov edi,edi" on function entry?

我在Windows7中单步执行结构化错误处理恢复代码(例如,SEH处理程序完成并传回“CONTINUE”代码后会发生什么)。这是一个函数,它被称为:7783BD9Fmovedi,edi7783BDA1pushebp7783BDA2movebp,esp7783BDA4push17783BDA6pushdwordptr[ebp+0Ch]7783BDA9pushdwordptr[ebp+8]7783BDACcall778692DF7783BDB1popebp7783BDB2ret8我习惯了“pushebp/movebp,esp”的函数prolog。目的何在的“movedi,edi”?

c++ - Windows GTest EXPECT_STREQ : error: no matching function for call to 'CmpHelperSTREQ'

出于某种原因,GTest在我的开发站上表现不佳。某些ASSERT/EXPECT测试正在运行,但我无法让字符串比较正常运行。这就是代码在CLion中的样子;注意错误弹出窗口:底部还附上了编译时的错误输出。由于我在Windows10上使用JetBrainsCLion,因此必须使用“MinGWMakefiles”CMake生成器构建GTest,然后使用MinGWmake(而不是CMake默认的VisualStudio生成器)。此外,我能找到的唯一可用资源是最新的GithubGTestmaster分支;其2016年11月的最新版本将不会在MinGW的Windows上构建。Infileinclu

windows - 在不同模块中 Access VBA Form Private Sub 调用 Public Function

在我的数据库中,我在一个模块中有一个公共(public)函数,它接收一个SQL字符串并返回一个打开的记录集。此函数在被此模块和其他模块中的其他公共(public)子程序调用时工作正常。但是,如果我尝试使用完全相同的代码调用相同的函数,则会出现编译错误:“参数数量错误或属性分配无效。”如果我将确切的代码剪切并粘贴到另一个模块中作为公共(public)子模块,它可以正常工作。我怀疑这个问题与命名或隐藏变量有关。不幸的是,我无法通过搜索找到任何解决方案。PublicFunctionQuery(SQLAsString)AsADODB.RecordsetDimcnnConnAsADODB.Con

c++ - 如何在 Windows 中访问继承的匿名管道 HANDLE,而不是 stdout、stderr 和 stdin?

我正在尝试通过Windows中的匿名管道从子进程接收数据。我知道如何使用标准I/O流来执行此操作,但这些被用于其他目的。我也知道如何在Linux或OSX中使用fork()、pipe()和execv()执行此操作。在Windows中,您可以使用CreatePipe()创建管道,并使用SetHandleInformation()使一端不可继承。然后,对于stdout和stderr,您可以将STARTUPINFO和hStdOutput或hStdError设置为CreateProcess()以传递另一端给child。在调用CreateProcess()之后,父级最接近它的是子级管道末端的句柄。