草庐IT

pthreads-win

全部标签

c++ - 如果线程在调用 pthread_join 之前退出怎么办

我有一个小代码void*PrintHello(void*threadid){cout我会在创建后的某个时间加入线程。如果main试图加入一个已经退出的线程,会发生什么? 最佳答案 Whatwillhappenifthemaintriestojoinathreadwhichalreadyexited?连接操作将立即完成并返回。 关于c++-如果线程在调用pthread_join之前退出怎么办,我们在StackOverflow上找到一个类似的问题: https:/

c++ - 将字符串传递给 pthread 函数

我是pthreads的初学者,请多多包涵。我试图将一个字符串传递给thread_routine1函数。它以一个空指针作为参数。然后我想打印出来。void*thread_routine1(void*arg1){cout在pthread_creat函数中,我试图传递字符串,但我得到了从字符串到void指针的无效转换类型。我知道我可能会在不止一个地方出错,所以我会很感激一些指示。 最佳答案 这真的与pthreads无关。你做这个投(void*)t1,这实际上是在类型系统上使用大锤。C++中的字符串不是指针,因此将其转换为-并将其视为-只会

c++ - 测试是否安装了字体 (Win32)

如何测试是否安装了字体?最终,我想实现一个类似HTML的字体选择,即当指定例如“Verdana,Arial”,它应该选择安装的第一个字体。ThisQuestion为.NET提供了一个答案——似乎推荐的方法是创建字体,然后cmpare实际使用的字体。这是最有效的方法吗? 最佳答案 您可以尝试创建字体并查看您得到的结果(因此使用操作系统的字体名称匹配/替换)。或者您可以枚举已安装的字体并自行匹配。“最有效”的方法将取决于“匹配”的细节,并且很可能取决于安装了多少字体。在安装了50种字体的系统上,您可能会发现性能与安装了1000种字体的系

C++ Win32 键盘事件

出于个人兴趣,我正在开发我的击键记录器,昨天问了一个与此相关的问题;WhileloopusingalotofCPU.该程序的问题是占用了过多的CPU使用率,人们建议使输入基于键事件。因为我是Win32API的新手,所以我尝试寻找引用资料和教程,它们将告诉我如何将键盘输入创建为基于事件的,而不是基于轮询的。但问题是我找不到任何可靠的例子或引用资料,因为对于一个完全的新手来说很难理解。他们中的大多数人提到基于事件的编程驻留在GUI应用程序中,但我希望这个击键记录器应用程序成为控制台应用程序。我的两个主要问题是:我可以使用Win32API编写基于事件的控制台击键记录器吗?如果没有,我有什么选

c++ - 我应该在我的 C++ WIn32 应用程序中重写 operators new/delete

我知道Microsoft自己曾经建议通过调用HeapCreate()和HeapAlloc()来覆盖operatornew,但那是不久前的事了。有关详细信息,请参阅KB139638。在Win32上重写new/delete是否仍然有益?推荐的实现方式是什么?TIA。 最佳答案 这篇文章说你可以做,而不是说你应该。其中的代码写得很糟糕,一点也不有趣,而且它不是线程安全的。通常,提供的new和delete实现可以很好地满足所有一般编程需求。只有当您确定了重新实现可以解决的特定问题时,您才应该考虑重新实现它们。

C++ win32 设置光标位置

我知道要使用哪个函数,但我无法让它正常工作。我使用了SetCursorPos(),唯一的问题是它将光标设置为屏幕坐标而不是窗口坐标。我也尝试了ScreenToClient()但它没有更好地工作。这是我的代码:pt.x=113;pt.y=280;ScreenToClient(hWnd,&pt);SetCursorPos(pt.x,pt.y);有什么想法吗?我正在使用win32。我希望我提供了足够的信息。 最佳答案 你正在接近这个稍微倒退。SetCursorPos函数适用于屏幕坐标,您希望根据窗口/客户端坐标设置光标。为此,您需要从客户

window 如何为微软商城安装的应用分配启动快捷键(支持 win 快捷键)。可以借助开源的 AutoHotkey 实现

需求:为WindowsTerminal配置快捷键写完这篇文章后,才发现windowsternimal本身支持Win+`快捷键😨。开始之前,先找到对应程序在开始解决需求之前,得先获取到程序的路径,可以选择实际路径或者为其创建一个快捷方式。方式一:创建快捷方式:通过win+r运行shell:AppsFolder可以打开应用程序列表,微软商城安装的应用都可在里面找到找到需要的程序,在这里我们要找的是“ternimal”程序将其拖到桌面或其他任意位置即可创建快捷方式。(tips:拖拽文件时按下alt键可以更方便地创建快捷链接)方式二:获取实际路径打开pwsh(powershell)运行explorer

c++ - 如何禁用按钮 - Win32 API

我创建一个程序,我需要:点击按钮A后,做一些事情,并禁用按钮A(意味着按钮被选中,不能继续点击!)我看到MSDN这个页面:http://msdn.microsoft.com/en-us/library/windows/desktop/bb849162%28v=vs.85%29.aspx但我不知道如何使用它(我也将它用作函数但是:错误:Button_Enablenotidentified) 最佳答案 或者你可以使用这样的代码::EnableWindow(hBtn,false) 关于c++-

c++ - Win32。在 dll 中启用视觉样式

我没有C++和WinAPI方面的经验,如果这个问题是新问题,我很抱歉。我有DLL,我可以在其中创建一些组件,例如MessageBox。我添加了pragma注释以启用视觉样式,但它不起作用(我从这个答案中知道它不应该:windows7styleforcomboboxoninternetexplorertoolbar,how?Dll代码(省略export等):#include"stdafx.h"#include"my-dll.h"#include#pragmacomment(linker,"\"/manifestdependency:type='win32'name='Microsoft.

c++ - 在 C++ Win32 中获取计算机上的用户配置文件列表

枚举计算机上所有用户配置文件的最佳方法是什么?我知道如何获取当前登录的用户配置文件,我知道如何获取“所有用户”配置文件。但我想获得计算机上每个配置文件的列表。 最佳答案 在像flokra建议的那样走无证路线之前,我会尝试NetUserEnum()或NetQueryDisplayInformation()如果你想进入无证之地,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\ProfileList有一个(不完整的)帐户列表(它缺少特殊帐户,如ASPNET、He