使用 SQLite 作为依赖库的 SDK 的 Winmd 构建
Winmd build for a SDK using SQLite as a dependent library
我有一个用 C# 编写的针对 Win10 UWP 应用程序的 SDK。
它使用 SQLite 并在 C# 客户端应用程序上完美运行。
但是 C++/javascript 应用程序可以将我的 SDK 与 SQLite 依赖项一起使用吗?
如果 SDK 必须与 UWP 兼容,则需要 winmd(windows 运行时组件构建),因为 UWP 应用程序可以使用 C#/C++/javascript/Visual basic。
我已经在 msdn 论坛上发布了这个,他们说我需要一个 windows 运行时组件来处理所有第 3 方依赖项才能正常工作。
已经尝试过 wrapper projects 和 wrapper winmd build,它不起作用。
我无法为 SQLite 库找到任何 winmd 版本。
请告知这里可以做什么。
非常感谢任何帮助。
But can a C++/javascript app use my SDK with the SQLite dependency?
是的,正如 msdn 论坛中所说,您将需要在 WinRT 组件通用应用程序中进行包装。
Have already tried wrapper projects and wrapper winmd build, it does not work.
不知道是什么阻碍了你,但你可以参考Writing a SQLite wrapper component for universal Windows apps,里面有详细的步骤你需要遵循,还有示例你可以看看。
我尝试了各种方法来使这个项目发挥作用,并在以下方面取得了一些成功:
以下是我与依赖项一起制作的项目结构:
客户端应用程序(C++):
- 包装 winmd 库。
Wrapper winmd 库(在 C# 中):(我从该项目生成一个 winmd 组件)
- 我的SDK项目
我的 SDK 项目(C#):
SQLite 网络。
SQLite 网络异步。
Newtonsoft JSON.
当我构建客户端应用程序时,我得到了 wrapperlibrary.winmd 文件,但我没有从输出目录(SQLite 和 Newtonsoft)中的第 3 方依赖项中得到相应的 dll。所以我手动将所需的 dll 复制到 C++ 应用程序的输出目录。现在它似乎工作正常,我可以验证第 3 方库和我的 C# 代码的正确使用。目前我只是想让设置作为一个 poc 工作,稍后再担心打包。
我现在面临的问题是我的 SDK 也有一些 UI 元素,所以基本上是为我拥有的 "XAML" 编译的 .xbf 文件。
我已经在另一个帖子中问过这个问题,以免偏离主题。
我有一个用 C# 编写的针对 Win10 UWP 应用程序的 SDK。 它使用 SQLite 并在 C# 客户端应用程序上完美运行。
但是 C++/javascript 应用程序可以将我的 SDK 与 SQLite 依赖项一起使用吗? 如果 SDK 必须与 UWP 兼容,则需要 winmd(windows 运行时组件构建),因为 UWP 应用程序可以使用 C#/C++/javascript/Visual basic。
我已经在 msdn 论坛上发布了这个,他们说我需要一个 windows 运行时组件来处理所有第 3 方依赖项才能正常工作。 已经尝试过 wrapper projects 和 wrapper winmd build,它不起作用。 我无法为 SQLite 库找到任何 winmd 版本。
请告知这里可以做什么。 非常感谢任何帮助。
But can a C++/javascript app use my SDK with the SQLite dependency?
是的,正如 msdn 论坛中所说,您将需要在 WinRT 组件通用应用程序中进行包装。
Have already tried wrapper projects and wrapper winmd build, it does not work.
不知道是什么阻碍了你,但你可以参考Writing a SQLite wrapper component for universal Windows apps,里面有详细的步骤你需要遵循,还有示例你可以看看。
我尝试了各种方法来使这个项目发挥作用,并在以下方面取得了一些成功: 以下是我与依赖项一起制作的项目结构:
客户端应用程序(C++):
- 包装 winmd 库。
Wrapper winmd 库(在 C# 中):(我从该项目生成一个 winmd 组件)
- 我的SDK项目
我的 SDK 项目(C#):
SQLite 网络。
SQLite 网络异步。
Newtonsoft JSON.
当我构建客户端应用程序时,我得到了 wrapperlibrary.winmd 文件,但我没有从输出目录(SQLite 和 Newtonsoft)中的第 3 方依赖项中得到相应的 dll。所以我手动将所需的 dll 复制到 C++ 应用程序的输出目录。现在它似乎工作正常,我可以验证第 3 方库和我的 C# 代码的正确使用。目前我只是想让设置作为一个 poc 工作,稍后再担心打包。 我现在面临的问题是我的 SDK 也有一些 UI 元素,所以基本上是为我拥有的 "XAML" 编译的 .xbf 文件。
我已经在另一个帖子中问过这个问题,以免偏离主题。