草庐IT

c++ - 检测 Windows (IE) 代理设置更改

我正在使用WinHttpGetIEProxyConfigForCurrentUser和friend在我的应用程序启动时收集当前代理信息,因为在每个请求似乎会大大降低性能之前,它会等待几秒钟收集代理数据.有没有一种方法可以检测Windows代理设置何时更改,以便我可以缓存信息直到它发生更改?谢谢,J 最佳答案 不确定是否有更好的方法,但您始终可以选择核选项并将RegNotifyChangeKeyValue与HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Inter

c - 在套接字(windows)上启用 SO_DEBUG 时如何查看套接字信息?

intsetsockopt(SOCKETs,intlevel,intoptname,constchar*optval,intoptlen);SO_DEBUG鼓励(但不要求)WindowsSockets服务提供商提供如果应用程序设置了SO_DEBUG选项,则输出调试信息。生成调试信息的机制及其采用的形式超出了本文档的范围。我没有找到任何范围。 最佳答案 它不适用于win32。Enablesdebugoutput.Microsoftproviderscurrentlydonotoutputanydebuginformation.我相信它

windows - Microsoft One Note 2010 是如何实现停靠到桌面的窗口的?

我是第一次使用此功能-在MSOneNote2010中,单击“停靠到桌面”按钮。然后应用程序将自己停靠在屏幕底部。如果一个窗口在其上方最大化,该窗口将不会与其重叠或重叠-OneNote窗口在固定使用屏幕空间方面变得类似于任务栏。回想起来,我在另一个地方见过这个:Windows7放大镜。我很好奇这是如何实现的?它是可以在WinForms应用程序中应用的窗口属性,还是我必须使用WindowsAPI/C++才能做到这一点?还是比这更棘手? 最佳答案 它可能使用SHAppBarMessage;example&一个vb6article仅仅是因为

c# - 创建 C# 应用程序以配置打印机页面设置

我希望在我的工作场所部署一个定义默认纸张大小的C#应用程序。没什么特别的。它通过调用windows.win32并使用注册表类写入注册表来工作。尽管我尽了最大的努力,但我一直无法找到相关的注册表项来设置纸张大小和注册的打印机。谁能帮忙?干杯! 最佳答案 更改注册表设置不是执行此操作的受支持方法。正确的方法是使用DEVMODE结构。DocumentProperties底部备注函数描述了将新设置(例如纸张大小)与现有配置合并的正确方法。别担心,它描述了如何更改应用程序的设置。将最后一步(CreateDC)替换为调用SetPrinter在l

.net - 将窗口置于无焦点的前面

我的.NET应用程序在后台运行,偶尔会创建并显示一个表单。该表单应该在所有其他窗口上方可见,但没有焦点。我的第一个方法是设置表单的TopMost属性,但在很多情况下都失败了,原因我无法解释。然后我尝试在Shown事件处理程序中调用BringToFront,但那没有做任何事情。我还尝试了BringWindowToTopAPI,它返回true(=成功),但没有结果。现在我坚持使用SetForegroundWindow,它可以工作,但也会将焦点放在窗口上(应该如此)。如有任何建议,我们将不胜感激。(另外,我可以毫无问题地窃取焦点是正常的吗?) 最佳答案

c++ - 如何使用 C++ 获取自动重置事件的状态?

比如说,如果我创建了这样一个事件:HANDLEhGlobalEvent=::CreateEvent(NULL,FALSE,FALSE,NULL);是否可以在不改变它的情况下通过它的句柄获取它的状态? 最佳答案 不,没有任何直接的方法可以做到这一点。即使有查询事件对象的方法,答案也可能随时改变,使信息立即过时。 关于c++-如何使用C++获取自动重置事件的状态?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.

windows - 如何为重叠窗口设置确切的客户端大小? (winapi)

当我创建一个普通的“重叠”窗口时,我想设置一个精确的客户端大小(比如300x300)。有一个AdjustWindowRectEx()函数,我可以在其中传递所需的客户端区域并获取我可以传递给CreateWindowEx的大小,但它说在文档中我不应该将它用于重叠的窗口我不明白为什么。当我通过300x300时,我从中得到306x326,当我收到WM_SIZE,客户端大小为298x298,因此它太小了2个像素。如何创建具有精确给定客户端大小的重叠窗口? 最佳答案 我的错误如下:AdjustWindowRectEx(&rect,WS_OVER

c++ - 如何在 Windows 8 中获取事件窗口的标题颜色

如何在Windows8中获取事件窗口的标题颜色?我尝试调用GetSysColor(COLOR_ACTIVECAPTION)但它返回不同的颜色。这很奇怪,因为在Windows7中它工作正常。有没有其他方法可以获取事件窗口的标题颜色或任务栏的颜色? 最佳答案 DWORDWINAPIGetSysColor(_In_intnIndex);对于GetSysColor()函数,如果nIndex参数超出范围,则返回值为零。因为零也是一个有效的RGB值,所以您不能使用GetSysColor()来确定当前平台是否支持系统颜色。相反,请使用GetSys

windows - 为什么要初始化一个对象为空

我正在MSDN的帮助下学习Windows编程。为什么有人会像下面这样初始化一个对象?WNDCLASSwc={};这会清零对象的所有内存吗?完整源码如下:#ifndefUNICODE#defineUNICODE#endif#includeLRESULTCALLBACKWindowProc(HWNDhwnd,UINTuMsg,WPARAMwParam,LPARAMlParam);intWINAPIwWinMain(HINSTANCEhInstance,HINSTANCE,PWSTRpCmdLine,intnCmdShow){//Registerthewindowclass.constwch

windows - 以编程方式更改 Internet Explorer 设置

在InternetExplorer中,Internet选项->高级我们有多个复选框用于设置。我想以编程方式管理所有这些。我查看了InternetExplorerAPI,但没有找到太多内容。编辑我想专门取消选中这两个复选框请提出建议。 最佳答案 您很可能需要更改注册表设置以编程方式更改这些字段。您可以开始查看此key:HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\InternetSettings 关于windows-以编程方式更改Intern