草庐IT

API管理

全部标签

windows - 在 Win32 C API 中执行 `EnumWindows` 查找窗口时如何避免使用全局变量?

在使用EnumWindows(或FindChildWindows)Win32API时如何避免使用全局变量?我大概有以下代码:HWNDprog_hwnd;BOOLCALLBACKProgEnumProc(HWNDhwnd,LPARAMlParam){if(...){//foundtherighthwnd,assignittoprog_hwnd;prog_hwnd=hwnd;returnFALSE;}returnTRUE;}voidFindProgHwnd(){EnumWindows(ProgEnumProc,0);}intmain(){FindProgHwnd();if(prog_hwn

windows - MSDN 引用 API

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion有谁知道是否有允许您从网络服务调用中检索MSDN信息的网络API?不幸的是,谷歌搜索MSDNwebAPI返回有关如何使用webAPI的信息。

windows - 防止任务管理器中的进程终止,反向

我使用下面的代码来防止用户从任务管理器中终止我的程序(我在某处找到它):functionPreventProcessKill:Integer;varhProcess:Thandle;EmptyDacl:TACL;pEmptyDacl:PACL;dwErr:DWORD;beginhProcess:=GetCurrentProcess();ZeroMemory(@EmptyDacl,SizeOF(tacl));pEmptyDacl:=@EmptyDacl;if(notInitializeAcl(EmptyDacl,sizeof(tACL),2))thendwErr:=GetLastErro

windows - Windows 编程中的 _spawnl 和 Createprocess(...) API 有什么区别?

Windows编程中的_spawnl(...)和Createprocess(...)API有什么区别?这些API在创建进程行为方面有何不同。 最佳答案 CreateProcess是用于创建进程的nativeAPI。spawnl是C运行时的一部分,具有类似POSIX的语义。它仅支持一小部分功能(提供命令行参数)并作为CreateProcess的包装器实现。与此同时,spawnl已被弃用,取而代之的是_spawnl。CreateProcess的自然操作模式与spawnl的P_NOWAIT模式相当,但具有附加功能(环境、标准处理安全性信息

windows - 如何从地址栏以管理员身份打开命令提示符

我使用文件资源管理器的地址栏在当前目录中打开命令提示符(通过在地址栏中键入cmd)。它将以管理员身份打开命令提示符。我使用的是Windows7操作系统并以域管理员身份登录。现在我将操作系统升级到Windows10。现在我也在做同样的事情,但是没有以管理员身份打开命令提示符。(对于本地管理员帐户来说没问题)。有什么方法可以让管理员获得命令提示符(从地址栏打开)? 最佳答案 我们可以添加这个windows默认的快捷方式,以管理员身份单击一下实现cmd 关于windows-如何从地址栏以管理员

windows - 由于缺少api-ms-win-crt-runtime-l1-1-0.dll,WAMPServer无法启动

我尝试安装wampserver3.0.6_x64并收到以下消息theprogramcan'tstartbecauseapi-ms-win-crt-runtime-l1-1-0.dllismissingfromyourcomputer我已经安装了所有东西我在StackOverflow中读到我需要安装UniversalCRuntime,但无法安装它。我很想知道如何解决它。 最佳答案 更新:最简单的解决方案从WAMPServer备用存储库whichcanbefoundhere下载全套MSVC运行时。在页面底部,有一个名为AllVisual

windows - Qt + win32 + mingw 上的原生 Windows API 链接问题

我正在尝试使用mingw工具集将nativeWindowsAPI与Qt结合使用。某些功能存在链接问题。会发生什么?这是mingw名称修改的错误吗?#ifdefQ_WS_WINHWNDhwnd=QWidget::winId();HDChdcEMF=CreateEnhMetaFile(NULL,NULL,NULL,NULL);Rectangle(hdcEMF,100,100,200,200);HENHMETAFILEhemf=CloseEnhMetaFile(hdcEMF);OpenClipboard(hwnd);EmptyClipboard();SetClipboardData(CF_E

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”?

php - 无法在 Windows 资源管理器中打开由 PHP Zip Archive 生成​​的 zip 文件

当我尝试打开由PHPZipArchive生成​​的zip文件时,出现警告显示"Windowscannotopenthefolder.TheCompressed(zipped)Folder'filename'isinvalid."erroropeninginWindowsExplorer.但我可以通过7-zip打开文件。由于某些原因,我必须确保zip文件可以通过Windows资源管理器打开。我生成zip文件时有什么问题吗?请帮忙!functioncreate_a_zip($files=array(),$dest='',$root_folder,$overwrite=false){if(f

windows - mingw std::thread 与 Windows API

我开始使用C++11std::thread(mingw4.8)到目前为止一切顺利。我遇到了重叠I/O的情况,其中sleepEx用于将线程置于可警告的等待状态。这工作得很好,直到必须使用QueueUserAPC,它返回一个“无效句柄错误”。经过一番查找,发现std::thread使用的是Windows下的pthread库。有没有什么方法可以使用WindowsAPI调用,它需要一个带有std::thread的线程句柄?或者我是否需要坚持使用Windows线程来处理重叠I/O? 最佳答案 为了解决您的问题,MinGW-w64winpthr