我有一个想法是在c#中为windows xp编写一个multimotor任务栏应用程序。那么,有没有人有任何信息
任何帮助都会......有帮助)))
答案 0 :(得分:2)
您可以P / Invoke SHAppBarMessage()来创建任务栏。您需要的APPBARDATA.hWnd可能只是Form类的句柄。任何事情都与你所展示的一样。
获取使任务栏显示活动窗口所需的通知将变得更加困难。您需要使用由SetWindowsHookEx()设置的全局WH_SHELL挂钩来接收您需要的通知。您无法在C#中设置此挂钩,它需要一个可以注入进程的非托管DLL。你会在this project找到重要的帮助。
除非您以某种方式找到您需要的未记录信息,否则无法完成Windows任务栏的正常工作。微软没有记录这个有充分理由,任务栏是他们在Windows外观上进行创新的重要组成部分。在Win7中相当明显。他们不希望任何代码依赖于此,他们几乎不可能保持下一版本的Windows兼容。我不得不建议你完全禁用Windows任务栏并用你自己的替换它。