NSIS CopyFiles不适用于.py文件

时间:2015-06-14 18:08:37

标签: python nsis file-copying

我正在使用NSIS为Python程序创建安装程序。我必须将源文件复制到C:\ Program Files \ Snakecharmer,所以我首先确保它已创建,然后将源文件复制到C:\ Program Files \ Snakecharmer。我正在复制三个.py文件,加上__pycache__和其他一些东西。

__pycache__的内容被复制,但它们不会留在__pycache__中,它们只是被复制到目录中。 根本不复制三个.py文件。其他一切都正确复制。

这是我的代码

CopyFiles "$R0\SnakeCharmer.py" "$INSTDIR"
CopyFiles "$R0\snakecharmerupdater.py" "$INSTDIR"
CopyFiles "$R0\cobracrypt.py" "$INSTDIR"
CopyFiles "$R0\__pycache__" "$INSTDIR"
CopyFiles "$R0\Run_SnakeCharmer.bat" "$INSTDIR"
CopyFiles "$R0\icon.ico" "$INSTDIR"
CopyFiles "$R0\SnakeCharmer.lnk" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs"

前三个是未复制的.py文件。

为什么会发生这种情况,我该如何解决?

1 个答案:

答案 0 :(得分:1)

NSIS在内部使用SHFileOperation,没有任何文件类型的特殊处理。 在开始操作之前,只需确保目标目录存在:Item 2

Process Monitor可能会给你一些线索,说明它失败的原因......