【发布时间】:2012-12-22 21:53:49
【问题描述】:
是否可以在类似于 iOS 开发的 Windows Phone 8 开发中使用私有 API?
当然,这不是关于要发布的应用程序(AppStore/Marketplace)。但是有很多非公共项目的用例,开发人员想要调用内部系统函数。
安装 Windows Phone 8 SDK 后,可以挂载位于C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Emulation\Images 的 Windows Phone 8 Emulator 映像。在 Windows Phone 操作系统的主分区中,可以导航到 Windows\System32 并使用 Dependency Walker 或 IDA Pro 等工具检查系统 DLL 文件。
有很多功能听起来很有趣,但不公开,因此没有记录。问题是:是否可以通过应用程序或其他方式以某种方式调用它们?
只是一些有趣的函数示例(还有更多):
- ShellChrome.dll:InvokeStartMenu、InvokeScreenCapture、InvokeVolumeUp、LockDevice……
- InputInjection.dll:ApiInjectInitialize、ApiInjectTouchEvent、...
- ...
我试图让 LoadLibrary(特别是 LoadLibraryExA)在本机 Windows Phone 应用程序项目中以某种方式工作,并加载和调用这些函数(库的加载工作)。长话短说,我在尝试调用函数时遇到了访问冲突错误或类似错误(可能是因为沙盒执行环境)。另一个问题是,我只能猜测函数的签名(参数)。我用我使用的工具找不到它们。
【问题讨论】:
-
顶起来,一个有趣的问题没有回应
标签: api windows-phone-8 private