0

我在 Visual Studio 2008 中使用 Windows 窗体模板 (Visual C++) 创建了一个系统托盘应用程序。我使用过ContextMenuStripNotifyIcon. 这是一个托管代码,因为我使用了表单和拖放。

我希望这个系统托盘应用程序一启动,它就会开始轮询连接的任何新 USB 设备(来自特定供应商)。

逻辑已经准备好了,只是我不知道“把这个while(1)循环放在哪里?”

它在我制作的控制台应用程序中运行良好,但现在我们希望它集成到系统托盘应用程序中。

这是代码片段:

        int numDevices, n = 0;
                while(1)
        {

            Sleep(5000);
            numDevices = usb_find_devices();
            if(connectedDevices > numDevices)
            {
                enumDevices();
                                    connectedDevices++;

            }
        }

如果有人能就如何继续向我提出一些建议,那将是非常可观的。

4

1 回答 1

0

谢谢汉斯!我用 WM_DEVICECHANGE 添加了一个新的“组件类”,它工作正常。

以防万一有人需要此信息:如果需要在 Windows 窗体应用程序启动后立即调用某个函数(在我的情况下为 Systray 应用程序),则可以在调用“InitializeComponent()”函数后调用相应的函数。尽管明确提到“TODO:在此处添加构造函数代码”,但仍然是初学者(像我一样)对“将此函数调用放在哪里??”有禁忌。希望这可以帮助某人..

于 2013-10-11T09:58:25.067 回答