V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
szzhiyang
V2EX  ›  程序员

OneNote 的这个骚操作是用哪个 Windows API 实现的?

  •  4
     
  •   szzhiyang · Oct 27, 2018 · 6675 views
    This topic created in 2743 days ago, the information mentioned may be changed or developed.

    Win32 版本的 OneNote 有个 停靠到桌面 的功能,可以把桌面图标和其他应用程序的窗口通通 排挤到 OneNote 窗口的周围,做起笔记来方便极了!


    我非常喜欢这个功能,我也想给我自己写的应用程序加上这个功能,可是我却找不到这个功能对应的 Windows API,望大家能帮忙指点迷津,感谢!


    1


    2

    32 replies    2018-10-29 09:45:17 +08:00
    szzhiyang
        1
    szzhiyang  
    OP
       Oct 27, 2018
    @geelaw 我很希望能得到您的专业解答,非常感谢!
    youthcould
        2
    youthcould  
       Oct 27, 2018
    请问右下角的飞机图标是啥软件啊?
    szzhiyang
        3
    szzhiyang  
    OP
       Oct 27, 2018
    我也问了身边的好几个熟悉 Windows 开发的朋友,他们都不知道这个功能是怎么实现的。

    希望同样不知道如何实现这个功能的 V 友们能帮顶一下这个帖子,也许这样我们可以更快地获知答案。
    Raymon111111
        4
    Raymon111111  
       Oct 27, 2018
    微软没有开发者论坛吗
    szzhiyang
        5
    szzhiyang  
    OP
       Oct 28, 2018   ❤️ 2
    @youthcould

    右下角的应用程序从左至右依次是:

    我自己写的 Microsoft Flight Simulator X 插件
    TIM
    微信
    f.lux
    ShareX (最强的截图软件)
    Elan 触控板驱动
    Power Keys (最强的键盘流效率工具,https://PowerKeys.GitHub.io
    OneDrive
    Laynooor
        6
    Laynooor  
       Oct 28, 2018 via Android
    记得微软有个数百美刀的服务,买了这个服务有 3 次还是 5 次提问的机会,会有专家一对一解决你的疑惑?
    dhssingle
        7
    dhssingle  
       Oct 28, 2018   ❤️ 1
    不懂,帮顶一下吧
    szzhiyang
        8
    szzhiyang  
    OP
       Oct 28, 2018
    @Laynooor 我这个问题值上百美刀?😂
    szzhiyang
        9
    szzhiyang  
    OP
       Oct 28, 2018
    @dhssingle 太感谢您了!
    dangyuluo
        10
    dangyuluo  
       Oct 28, 2018
    @szzhiyang 我不是 Windows 开发者所以回答不了问题。但是我有个小经验,那就是自己发出的感谢一定要克制,不能随便一个路人说了句无用的话就以很强烈的语气去感谢。

    感谢也是会通货膨胀的。
    ysc3839
        11
    ysc3839  
       Oct 28, 2018
    我猜测是 SystemParametersInfo SPI_SETWORKAREA。具体 OneNote 怎么做的也许得逆向看看了。
    iwtbauh
        12
    iwtbauh  
       Oct 28, 2018
    如果是 Linux 或者 Unix 我倒是可以告诉你

    文档在 https://specifications.freedesktop.org/wm-spec/1.3/ar01s05.html
    使用 _NET_WM_STRUT 和 _NET_WM_STRUT_PARTIAL 这两个 Atom 即可
    yejinmo
        13
    yejinmo  
       Oct 28, 2018
    是否可以考虑使用 spy++ 抓取 OneNote 的消息
    oott123
        14
    oott123  
       Oct 28, 2018 via Android
    歪楼,我觉得 Snipaste 才是最强截图软件,并且还是最强贴图软件(顶锅盖逃
    dandycheung
        15
    dandycheung  
       Oct 28, 2018 via Android   ❤️ 1
    难道不是失传已久的桌面工具栏?
    mason961125
        16
    mason961125  
       Oct 28, 2018 via iPhone
    你有没有想过,可能 Onenote 真的只是移动了图标,然后窗口还原的时候再移回去?
    icekingcy
        18
    icekingcy  
       Oct 28, 2018 via iPhone
    歪楼问下 还有桌面 Wideget 插件实现的方式么
    storypanda
        19
    storypanda  
       Oct 28, 2018 via Android
    surface go 可以做到一并开 5 个窗口吗? win10 家庭版
    orzfly
        20
    orzfly  
       Oct 28, 2018   ❤️ 1
    我记得 Windows 上,古时候有个…… AppBar 的概念。

    http://www.thescarms.com/VBasic/appbar.aspx
    geelaw
        22
    geelaw  
       Oct 28, 2018 via iPhone   ❤️ 5
    Application Toolbar

    Raymond 遇到过 https://blogs.msdn.microsoft.com/oldnewthing/20170504-00/?p=96106

    我的例子 https://github.com/GeeLaw/PowerShellThingies/tree/master/modules/Dock-PS

    同时抗议不付费的技术支持服务,以及 MSDN forums 更适合问针对 Win32 的问题。

    最后,任务栏也是这么实现的。
    geelaw
        23
    geelaw  
       Oct 28, 2018   ❤️ 1
    其实这个内容我似乎在 V2EX 上 po 过 https://www.v2ex.com/t/359583
    szzhiyang
        24
    szzhiyang  
    OP
       Oct 28, 2018
    @geelaw

    非常感谢您的热心解答!

    您的那篇帖子发布之时我还没有开始逛 V 站,所以我很难注意到那篇帖子。

    看来 V 站了解 Windows 开发的人并不多,我以后会多去 MSDN 论坛逛逛。
    szzhiyang
        25
    szzhiyang  
    OP
       Oct 28, 2018
    @dangyuluo

    在他帮顶之前,有 200 多个 V 站会员浏览了我的这个帖子,但是他们都没有吭声。

    他作为第一个愿意帮顶我帖子的 V 友,我为什么不能感谢他?

    虽然他的回复没有直接回答问题,但是他的这个回复却能间接帮助这个帖子更快找到解决方法,怎么就没有意义?
    lance6716
        26
    lance6716  
       Oct 28, 2018 via Android
    @szzhiyang 有的大佬看到你感谢他跟感谢别人一样就会不高兴(真是奇怪
    szzhiyang
        27
    szzhiyang  
    OP
       Oct 28, 2018   ❤️ 1
    @lance6716 经验告诉我,真大佬的心胸是不会那样狭窄的。
    mmdsun
        28
    mmdsun  
       Oct 28, 2018 via Android
    帮顶。我也没见到过这个 api
    daigouspy
        29
    daigouspy  
       Oct 28, 2018 via Android
    @szzhiyang 找一下 Windows shell 编程新加的内容,应该就在那里。
    openbsd
        30
    openbsd  
       Oct 28, 2018
    @Laynooor #6
    不用数百刀 RMB150 不过要求涉及的微软产品均是来自微软 零售的正版 之前遇到个 “底层?” 问题专门咨询过,门槛太高遂放弃了
    wohenyingyu02
        31
    wohenyingyu02  
       Oct 28, 2018
    隐约记得 win8 时代的大方块是可以这样设置的,那时候还叫 metro 应用……
    cuzfinal
        32
    cuzfinal  
       Oct 29, 2018
    Windows10 有分屏功能,和这个很像。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2579 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 105ms · UTC 06:10 · PVG 14:10 · LAX 23:10 · JFK 02:10
    ♥ Do have faith in what you're doing.