问题标签 [deskband]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
96 浏览

winapi - 如何设置初始桌带宽度?

我有一个基于 MS 样本的桌带。它通过右键单击任务栏、工具栏显示为一个项目。我发现最初打开它时使用的是DBIM_MINSIZE而不是DBIM_ACTUAL大小。这是为什么?

设置初始宽度的适当方法是什么(奖金,当桌带关闭时(从工具栏中删除复选框)然后再次打开,你如何让它使用先前的宽度)?

蒂亚!

0 投票
0 回答
57 浏览

c# - 如何隐藏添加新工具栏的验证消息窗口

我正在尝试在 C# 中将新工具栏添加到我的任务栏中,如上所示: 在此处输入图像描述

现在,任何时候我想显示这个图标(通过代码)我都会收到这条消息:

在此处输入图像描述

我的问题是 - 如何隐藏此消息窗口?这意味着,工具栏将在没有此是/否窗口的情况下自动添加。当我尝试手动显示图标时,如下所示: 在此处输入图像描述

消息窗口未显示。我正在使用 C# 的 DeskBand。

我尽可能地进行调查,但没有找到任何满意的答案。

谢谢,

0 投票
0 回答
33 浏览

c# - 将数据从 c# 程序发送到 c++ dll (DeskBand)

伙计们,我被困在我的应用程序的功能性桌带实现的最后一部分,

就上下文而言,我目前正在运行一个包含 2 个项目的 Visual Studio 解决方案,一个是 c++deskband dll,另一个是一个简单的 c# 控制台程序。DeskBand 代码是Microsoft 的 DeskBand 示例

目前,我可以在控制台应用程序运行时通过使用 GetProcAddress() 调用“DllRegisterServer”来注册 dll。在此之后,我只需右键单击任务栏并启用已注册的桌带。我的问题来自这里,

注册后,假设 Deskband 实现中的 OnPaint 事件绘制了一个名为“Hello world”的文本变量,我要做的只是将一个字符串从 c# 发送到正在运行的 dll 并使其绘制为“从 c# 发送”。

寄存器类:

简单的控制台程序:

顺便说一句,我知道微软在 win11 中停止了桌带,但我真的想只为 win10 平台实现这个功能,我觉得我快完成这个了。

如果您需要完整的代码进行说明,我可以将其托管在 GitHub 上。