V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
szzhiyang
V2EX  ›  程序员

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

  •  4
     
  •   szzhiyang · 2018 年 10 月 27 日 · 6554 次点击
    这是一个创建于 2646 天前的主题,其中的信息可能已经有所发展或是发生改变。

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


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


    1


    2

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

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

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

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

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

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

    http://www.thescarms.com/VBasic/appbar.aspx
    geelaw
        22
    geelaw  
       2018 年 10 月 28 日 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  
       2018 年 10 月 28 日   ❤️ 1
    其实这个内容我似乎在 V2EX 上 po 过 https://www.v2ex.com/t/359583
    szzhiyang
        24
    szzhiyang  
    OP
       2018 年 10 月 28 日
    @geelaw

    非常感谢您的热心解答!

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

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

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

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

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