草庐IT

线程信息

全部标签

c++ - 使用 C++ 解析来自添加到任务栏的程序的信息

基本上我想做的是用C++编写我自己的伪任务栏。该程序需要空闲直到另一个程序启动,此时它需要直观地描述另一个程序正在运行。对于每个其他正在运行的程序,用户应该能够单击可视化表示并让Windows将焦点切换到所选程序。此时最大的潜​​在问题是:这有可能吗?或者Windows是否隐藏了大部分/所有它的繁琐位,以使其接近(如果不是完全)不可能?[编辑:]重组问题 最佳答案 明显的起点是SetWindowsHookEx(WH_SHELL,...);它将在创建或销毁顶级窗口时向您发出通知(以及其他一些相关事件,例如不同的窗口被激活,窗口的标题改

c++ - 在 wxwidgets 中,如何让一个线程在继续之前等待另一个线程完成?

我有一个系统,我的单例类生成一个线程来进行计算。如果用户在另一个计算仍在运行时请求另一个计算,我希望它拆除现有线程并启动一个新线程。但是,它应该等待第一个线程完全退出才能继续。我已经完成了所有的拆解工作,但我似乎无法确保只有一个线程运行。我的方法是让StartCalculation函数调用mutex->Lock()。析构函数中的线程释放锁。它不工作。我假设如果Lock()无法获得锁,它会旋转并不断尝试重新获取锁,我的假设是否正确?这个Lock()可以从我的主应用程序线程调用吗?任何想法都是有帮助的。也许wxMutex锁是正确的机制。 最佳答案

c# - c# 中正确的队列线程技术?

我想实现一个Windows服务,该服务将丢弃的平面分隔文件捕获到一个文件夹中,以便导入到数据库中。我最初设想的是让FileSystemWatcher查看导入的新文件并创建一个新的导入线程。我想知道我应该如何正确地为此实现一个算法以及我应该使用什么技术?我的方向是否正确? 最佳答案 我为客户开发了这样的产品。该服务正在监控多个文件夹中的新文件,当发现文件时,文件会被读取、处理(在条码打印机上打印)、存档和删除。我们使用了一个“发现者”层,它使用FileSystemWatcher或根据环境进行轮询来发现文件(因为FileSystemWa

.net - 如何在数据库中存储windows授权信息

我在Intranet场景中有一个应用程序:windows窗体,使用wcf传输安全和windows身份验证(usingthispattern)。我需要存储Windows用户信息并在我的表“Person”中连接Windows用户(使用SqlServer)。但我不知道最好的方法是什么。谁能帮我解决一下? 最佳答案 最好的办法是存储用户的SID,这对于给定的用户永远不会改变,而登录名是可以改变的。如果您可以获取用户的WindowsIdentity,则SID位于User中属性(property)。

c++ - 如何以编程方式获取 Windows 进程的线程数?

我想通过C/C++计算当前Windows进程的native线程数。我看到有一个relatedquestion有.NET答案,但我不能使用该解决方案。我怀疑可能有一个通过PdhOpenQuery/PdhCollectQueryData的解决方案,但我还没有探索那个方向,我希望有一个更简单的方法。更新:我应该说我当前的实现使用CreateToolhelp32Snapshot/Thread32First/Thread32Next,而这正是我要替换的。该实现非常笨拙,在我的进程中每次调用都会导致20,000个页面错误。也许我只是用错了?Update2:最适合我的解决方案是使用我感兴趣的进程的P

c++ - [C++] 对于线程中的 'sleep' 函数,这是否是一种有效的方法?

我想在我的线程类中实现一个sleep()函数,但我不知道这是否是一种有效/正确的方法。这是我的整个线程类(thread.h):#includestructRUNNABLE{virtualvoidrun()=0;};classthread{public:voidstart(void*ptr){DWORDthr_id;HANDLEthr_handl=(HANDLE)_beginthreadex(NULL,0,thread_proc,ptr,0,(unsignedint*)&thr_id);}voidsleep(intsleep_time,boolalertable){SleepEx(sle

c++ - 当 spy++ 没有提供任何可从软件中提取的详细信息时该怎么办?

我有一些软件需要一些信息挖掘,比如从控件/列表等获取文本。问题是spy++无法检测到任何控件,更不用说它们的文本了。我认为该软件是用c++/mfc/winapi未知的东西制作的那么我在这里有什么选择,我能做什么?似乎winapi在这里根本不起作用? 最佳答案 Microsoft有一个称为DirectUI的无窗口UI工具包,其他应用程序可能使用类似的控件。基于HWND的工具不会在那里帮助你,你最好的选择可能是尝试accessibilityapi. 关于c++-当spy++没有提供任何可从软

c# - 如何让用户强制输入某些信息的窗口?

在我的工作场所,我需要创建一个用户必须填写的问卷。目的是使其尽可能不干扰用户并将其链接到他们的Windows帐户。然后,结果将存储在数据库中,可以根据响应生成报告。建议是在登录时加载问卷,即当用户登录计算机时。我必须使该窗口独占,以便无法与其他窗口进行交互。我的问题是我该怎么做?这可以用WPF完成还是我需要XNA或类似的东西?此外,对于如何通过不同的实现方式满足所有标准,是否还有其他建议?有没有办法在屏幕解锁时运行/激活应用程序? 最佳答案 您可以使用WinForms或WPF创建应用程序。我不知道XNA。:)你可以在启动时加载它;通

c++ - 使用 beginthreadex 创建线程时调试应用程序挂起

我在现场遇到一个奇怪的问题,我们的应用程序在启动时挂起。现场拿到custom生成的crashdump,显示主线程被beginthreadexapi卡住了。这是调用堆栈:0:006>kvChildEBP0161ebb8ntdll!KiFastSystemCallRet(FPO:[0,0,0])0161ebbcntdll!ZwWaitForSingleObject+0xc(FPO:[3,0,0])0161ebf8ntdll!RtlpWaitOnCriticalSection+0x1a3(FPO:[2,7,4])0161ec18ntdll!RtlEnterCriticalSection+0x

windows - 服务 OnExecute 失败,生成的线程未执行

首先开始在Delphi7中启动我自己的服务。遵循文档并使服务生成一个自定义线程,该线程会发出蜂鸣声并记录日志。只有它没有。最后一次尝试是在OnExecute事件过程中放置​​相同的蜂鸣声和日志代码,但是当我启动该服务时,我收到一个Windows对话框,提示它已启动然后再次停止。在thiscode中应该有一些明显的东西被我忽略了.你能看看吗?我还将接受指向简单、有效、可下载的服务示例项目的链接……这样我就可以得到每10秒左右调用一次的东西,我将从那里获取它。 最佳答案 接下来是一个基本的服务应用程序。请注意,如果您想使用Service