Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

window下无法启动成功 #60

Closed
suepradun opened this issue Sep 2, 2024 · 20 comments
Closed

window下无法启动成功 #60

suepradun opened this issue Sep 2, 2024 · 20 comments

Comments

@suepradun
Copy link

Traceback (most recent call last):
File "main.py", line 210, in
File "main.py", line 206, in main
File "webview_init_.py", line 166, in start
File "webview\guilib.py", line 134, in initialize
File "webview\guilib.py", line 83, in try_import
File "webview\guilib.py", line 72, in import_winforms
File "", line 1176, in _find_and_load
File "", line 1147, in _find_and_load_unlocked
File "", line 690, in _load_unlocked
File "PyInstaller\loader\pyimod02_importers.py", line 419, in exec_module
File "webview\platforms\winforms.py", line 12, in
File "", line 1176, in _find_and_load
File "", line 1147, in _find_and_load_unlocked
File "", line 690, in load_unlocked
File "PyInstaller\loader\pyimod02_importers.py", line 419, in exec_module
File "clr.py", line 6, in
File "pythonnet_init
.py", line 143, in load
File "clr_loader\types.py", line 94, in get_function
File "clr_loader\types.py", line 58, in init
File "clr_loader\netfx.py", line 47, in _get_callable
RuntimeError: Failed to resolve Python.Runtime.Loader.Initialize from D:\vector-vein_internal\pythonnet\runtime\Python.Runtime.dll

本地的python 环境为3.11.9

@AndersonBY
Copy link
Owner

不打包的时候能启动么

@suepradun
Copy link
Author

使用开发模式可以正常启动而且使用本地打包运行也是ok的。

@AndersonBY
Copy link
Owner

使用开发模式可以正常启动而且使用本地打包运行也是ok的。

开发模式能启动打包后也正常运行的话,那你上面的报错是在啥情况下出现的?

@suepradun
Copy link
Author

使用0.2.7的release直接启动出现的。

@AndersonBY
Copy link
Owner

发了一个新版:v0.2.8,看看还有没有报错。

@suepradun
Copy link
Author

还是报错
image

@AndersonBY
Copy link
Owner

看起来 和这两个 issue 都一样的:
r0x0r/pywebview#1215
#41

你看看在你的 PowerShell 运行下面指令,看看你的 .net 是多少的版本

reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\full" /v version

@suepradun
Copy link
Author

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\full
version REG_SZ 4.8.09032

@AndersonBY
Copy link
Owner

实在解决不了,还是和 pythonnet 和 .net 有关,太难搞了

@suepradun
Copy link
Author

对比了正常启动的机器, 里面对应的python版本与.net framework版本都是一样的。
应该是其他系统环境因素引起的。

@kundeng
Copy link

kundeng commented Sep 17, 2024

I've identified the issue; your build is actually fine. In your README, you can instruct users that after downloading the ZIP file, they should "unblock" it before extracting its contents.

**
image
**

@kundeng
Copy link

kundeng commented Sep 17, 2024

还是报错 image

see above.

@BlueDarkUP
Copy link

孩子们,你们无法想象这是为什么,原因就是windows发觉这个dll文件来源于另外一个计算机,安全起见不让你用,所以事实上只需要右键dll文件属性解除锁定就行了

@BlueDarkUP
Copy link

这个文件的位置就在
.\vector-vein_internal\pythonnet\runtime

@suepradun
Copy link
Author

孩子们,你们无法想象这是为什么,原因就是windows发觉这个dll文件来源于另外一个计算机,安全起见不让你用,所以事实上只需要右键dll文件属性解除锁定就行了

但同样的文件有些机器可以,有些不行,是因为window设置么?是什么设置?

@AndersonBY
Copy link
Owner

孩子们,你们无法想象这是为什么,原因就是windows发觉这个dll文件来源于另外一个计算机,安全起见不让你用,所以事实上只需要右键dll文件属性解除锁定就行了

我说怎么老是复现不了,必须得换个电脑,估计还有安全策略不同也会有影响吧

@BlueDarkUP
Copy link

BlueDarkUP commented Sep 21, 2024

问题我解决了
方法简单的很,右键下载的zip,解除锁定,里面的所有文件都会解除锁定
我像个弱智一样搞到现在

@AndersonBY
Copy link
Owner

捣鼓到现在,每次解决一个问题都会有别的报错,原因就是安装的项目使用了exe自动下载的库,而这些库都被标记成来自于其他的设备,所以整个下载下来的所有文件都会被锁定,而且我暂时没有找到方法来解除锁定所有的文件,所以我认为解决方法就是只提供一个bat脚本,用户电脑上本身就有符合条件的python,所有库和虚拟环境在用户的电脑上下载创建,我觉得可以参考一下GPT学术优化的一键安装脚本,除此之外没有任何方法信任这个文件,即使添加到白名单或者关闭实时保护,因为标记在下载的一瞬间就完成了。即使我在组策略编辑器中的“文件附件中不保留区域信息”选择了启用,但我重新下载的ZIP文件中的文件还是有解除锁定选项,所以我怀疑源文件本身就带有来自其他计算机的选项

可能会考虑用安装包的方式提供给用户

@BlueDarkUP
Copy link

Owner

不必了,看我最新的留言。。。。
我们都想得太多了

@AndersonBY
Copy link
Owner

Owner

不必了,看我最新的留言。。。。 我们都想得太多了

我在 README 里加一下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants