AstralSightStudios / System-Init-Toolbox

【暂停开发的废弃项目】System Init Toolbox - 新系统运行库工具箱
GNU General Public License v3.0
6 stars 0 forks source link

WSA程序内安装功能的问题 #7

Closed Searchstars closed 1 year ago

Searchstars commented 2 years ago

在0.4BETA中,我们将发布WSA功能,包括安装WSA,在WSA中安装apk程序等功能。 但是,我们目前无法做到在程序中安装WSA。众所周知,目前WSA的唯一快速、官方的下载渠道就是微软商城,大部分的教程中,也推荐使用微软商城来安装此程序。可是,微软商城的软件是无法外链下载的,所以我们需要使用https://store.rg-adguard.net/ 这个网站来抓取uri,达到外链下载的效果。 但是这个链接是有时效性的,一天更新一次!一个链接,一天后,就不能用了! 所以,我们需要在程序内加入一个抓取微软商店程序uri下载链接的功能。目前看来。最好的做法就是“稍微”借用一下https://store.rg-adguard.net/ 这个网站的功能,向它的api(https://store.rg-adguard.net/api/GetFiles )发送一个Post,内容包含商店软件链接,通道等,大概如下:type=url&url=https://www.microsoft.com/en-us/p/windows-subsystem-for-android-with-amazon-appstore/9p3395vx91nr&ring=WIS&lang=zh-CN 但是C#的HttpRequest啥的,怎么发送Post并等待返回结果,我和@SCP-10492 目前为止都搞不明白。 如果能返回到结果,那好办,提取里面的链接就行。 但是不能啊,咱们不会啊~ 当然还有一种蠢方法,就是先用Python写个程序,代替System Init Toolbox向服务器发送Post和接收返回值,收到返回值后,print到console中,这就是Python程序的大概内容。然后pyinstaller -F成一个exe,放在System Init Toolbox的目录下,然后Process打开这个程序,等待执行完成,然后获取Console中的内容(也就是Python程序的print),就能得到返回的结果了。但是这样太麻烦了,还是作为一个备选选项,在我们实在弄不明白C#的发Post和接收返回值之后再启用它。至少现在,我们还是先研究下C#吧。 然后,如果各位有什么好的建议,也欢迎发言!