Flutter windows:获取flutter应用程序的win32窗口句柄

2024-01-08

如果我没记错的话,flutter 目前是使用 win32 库在 Windows 上实现的(尽管一些文档页面指出这可能会更改为 .NET 或其他一些框架,因为 flutter windows 处于非常早期的开发阶段,并且可能随时更改)时间而不保持向后兼容性)。有没有办法获取当前 flutter 应用程序的 win32 窗口句柄?


static final _user32 = DynamicLibrary.open('user32.dll');

static final findWindowA = _user32.lookupFunction<
      Int32 Function(Pointer<Utf8> _lpClassName, Pointer<Utf8> _lpWindowName),
      int Function(Pointer<Utf8> _lpClassName,
          Pointer<Utf8> _lpWindowName)>('FindWindowA');

int hWnd = findWindowA('FLUTTER_RUNNER_WIN32_WINDOW'.toNativeUtf8(), nullptr);
print(hWnd);

'FLUTTER_RUNNER_WIN32_WINDOW' 是在 windows/runner/win32_window.cpp 中定义的 flutter 窗口类名称,您可以使其唯一,以防用户运行多个 flutter 应用程序。

toNativeUtf8 是 dart ffi 的一个函数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter windows:获取flutter应用程序的win32窗口句柄 的相关文章

随机推荐

  • 如何缓存片段视图

    我想缓存一个片段视图 我的活动有可滑动的选项卡 每个选项卡调用不同的片段 但是 当我在选项卡之间滑动时 由于片段视图被破坏 在滑动操作期间会重建 转换似乎相当慢 有谁知道如何缓存每个片段的视图以防止此问题 我使用库支持 v4 和 api 1
  • Laravel - Valet 2.* 只返回“它有效!”

    我正在尝试设置 Valet 来与我的 Laravel 项目一起使用 但遇到了标题中提到的问题 我当前运行的 Valet 版本是 2 0 3 到目前为止 这是我尝试过的 重新安装代客 重新启动 重新安装 php7 0 with fpm 重新启
  • 无法使用 fixup_bundle() 创建带有 Qt 的可移植包

    我已经在其他帖子中搜索过这个问题 但到目前为止还没有 所以我在这里 我想创建一个可移植的包 可移植 就像 我可以在任何 OS X 机器上运行它 即使我所需的库 Qt 没有安装 不幸的是 我不知道如何使用 fixup bundle 这似乎是合
  • Node.js 模块和函数中“this”的含义

    我有一个 JavaScript 文件 由以下方式加载require loaded by require var a this this is an empty object this anObject name An object var
  • iPhone iOS 4 - 安排应用程序在特定时间和日期运行功能

    我正在寻找一种方法 能够将我的应用程序设置为根据时间和星期几启动并执行某些功能 该应用程序需要能够设置时间和星期几 然后根据该时间和日期运行特定功能 例如 如果我将应用程序设置为每周六中午 12 00 运行 1 个函数 每周日下午 3 00
  • 将 Objective-C 方法转换为 Swift for NSInputStream(将字节转换为双精度)

    我在 Objective C 中有以下代码 double readDouble double value 0 0 if self read uint8 t value maxLength 8 8 NSLog Couldn t read do
  • var_dump() 不显示受保护和私有财产

    是否有任何函数或如何 var dump 对象而不显示它的受保护和私有财产 example class foo public public public protected protected protected private privat
  • 如何使用 .htaccess 禁用代理缓存

    我遇到一个问题 公司代理服务器为不同的登录用户提供页面 我认为我可以通过禁用代理缓存来解决这个问题 这一页 http drupal org node 32109建议在 htaccess 中包含以下代码片段 ExpiresDefault A0
  • 有人使用 JRuby-Rack 和 Rails 3 吗?

    还有其他人在运行 Rails 3 和 JRuby Rack 或者 Jetty 和 Rails 3 吗 有什么技巧吗 我对一些调试感到疯狂 此时我只想知道这是可能的 这些说明对我有用 http mathias biilmann net 201
  • 如何找到OpenSSL可信证书的路径?

    如何找出我的 OpenSSL 安装在哪里寻找已安装 受信任 的证书 有时是这样 etc ssl cert 但我有一个新系统 它不适用于此路径 查找证书的默认路径在每个平台上可能有所不同 您可以使用以下命令查找系统配置 openssl ver
  • MediaRecorder 捕获的音频文件在使用 Retrofit 2 发送到服务器后被破坏

    我的应用程序录制一个音频片段 并在录制完成后使用Retrofit2将片段发送到服务器 服务器收到文件 但文件已损坏 我所说的损坏是指无法播放 我使用以下 URL 示例 url mydomain co audio myaudio mp4 播放
  • 独立 IntelliJ 解析器中的符号解析

    我尝试使用 IntelliJ SDK 作为独立的 java 解析器 它在大多数情况下工作正常 但无法解析泛型方法的返回类型 当我调试时resolveMethod for verify mock simpleMethod 在 IntelliJ
  • Chrome 开发者扩展中的 CORS 问题

    我是 Chrome 扩展开发的新手 我正在开发一个 Chrome开发商扩展 作为开发人员工具的一部分出现 此要求是进行外部服务 某些 URL 调用 该调用可能位于也可能不在同一服务器 原始服务器 中 从文档中我看到扩展不受同源策略的限制 h
  • 字符串有多少个参数

    在C 中使用String Format格式化字符串之前 我想知道该字符串接受多少个参数 例如 如果字符串是 0 与 1 不同 我想知道该字符串接受两个参数 例如 如果字符串为 0 与 1 和 2 不同 则该字符串接受 3 个参数 我怎样才能
  • SQL Server Compact 文件在哪里?

    我有一个使用 SQL Server Compact 数据库的 ASP NET MVC 项目 我有以下连接字符串FoobarContext
  • PHP str_replace 无法正常工作

    我正在使用 str replace 但它无法正常工作 我有一个文本区域 其输入通过表单发送 当服务器接收到数据时 我想将新行更改为 teams GET teams teams str replace n teams echo teams 奇
  • 如何对 Firebase.functions().httpsCallable 执行 GET?

    如何对 Firebase functions httpsCallable 执行 GET 我不断收到 POST 错误 404 但这是对我的服务器的 GET 请求 我应该不传递任何内容 还是需要更改此 httpsCallable 来获取函数 C
  • 您的语言在实践中对 unicode 的支持程度如何?

    我正在研究新的语言 有点渴望一种我不再需要担心字符集问题以及我在新项目中使用 PHP 遇到的大量其他问题的语言 我倾向于认为 Java 过于冗长和混乱 而且我不想用 6 英尺长的杆子接触 Windows 因此倾向于排除 Net 这就剩下了基
  • 如何在 SASS 中使用父选择器将类链接到元素[重复]

    这个问题在这里已经有答案了 我正在尝试使用 SASS scss 执行以下操作 class Base class styles a Additions for when applied to a link 但我收到编译器错误 Invalid
  • Flutter windows:获取flutter应用程序的win32窗口句柄

    如果我没记错的话 flutter 目前是使用 win32 库在 Windows 上实现的 尽管一些文档页面指出这可能会更改为 NET 或其他一些框架 因为 flutter windows 处于非常早期的开发阶段 并且可能随时更改 时间而不保