Windows 7 Winrar SFX命令行忽略-iicon开关

Windows 7 Winrar SFX命令行忽略-iicon开关,windows-7,cmd,winrar,ico,sfx,Windows 7,Cmd,Winrar,Ico,Sfx,我正在尝试创建一个winrar自解压存档,在命令行上有一个自定义图标 到目前为止一切进展顺利,只是自定义图标不起作用。每当我构建归档文件时,使用的图标都是默认的winrar图标 如果我使用SFX对话框创建SFX,那么它可以正常工作。这告诉我图标没有什么问题 我使用的命令是: rar a -r -ep1 -sfx -iiconC:\AMC\setupicons\setup.ico -z"Source\createrarsetups.conf" setup.exe "SetupFiles\*" 为

我正在尝试创建一个winrar自解压存档,在命令行上有一个自定义图标

到目前为止一切进展顺利,只是自定义图标不起作用。每当我构建归档文件时,使用的图标都是默认的winrar图标

如果我使用SFX对话框创建SFX,那么它可以正常工作。这告诉我图标没有什么问题

我使用的命令是:

rar a -r -ep1 -sfx -iiconC:\AMC\setupicons\setup.ico -z"Source\createrarsetups.conf" setup.exe "SetupFiles\*"
为了解决问题

rar a -r -ep1 -sfx -z"Source\createrarsetups.conf" setup.exe "SetupFiles\*"
winrar s -iiconC:\AMC\setupicons\setup.ico setup.exe

您也可以只使用一个命令,而不是调用
rar
,使其工作。不,我不知道为什么控制台版本不包含图标

WinRAR的program files文件夹中的文本文件
Rar.txt
包含控制台版本
Rar.exe
支持的所有命令和开关。在没有任何参数的情况下运行
Rar.exe
,也会列出所有参数,并给出简要说明

WinRAR.exe支持的命令和开关在WinRAR的帮助中进行了说明,在帮助选项卡上打开内容命令行模式

控制台和GUI版本之间支持的交换机列表存在一些差异。其中一个区别是控制台版本不支持SFX图标。我想,原因是需要一个Microsoft库函数,而不是(轻松地)用于控制台应用程序

您可以使用
WinRAR.exe
而不是
Rar.exe
,即使从批处理文件中运行它也是如此。另外,使用开关
-ibck
-inul
在后台运行
WinRAR.exe
,而不会在出现故障时显示错误消息。开关
-y
也可能有用

"%ProgramFiles%\WinRAR\WinRAR.exe" a -r -ep1 -inul -ibck -y -sfx -iiconC:\AMC\setupicons\setup.ico -z"Source\createrarsetups.conf" setup.exe "SetupFiles\*"
if errorlevel 1 echo There was an error on creating the SFX archive!

使用WinRAR.exe而不是Rar.exe确实有效,但是,出于某种原因,我还需要更改生成的文件的名称,以便图标出现。在我成功生成带有图标的sfx之后,我切换回了我想要的exe的原始名称,并且它也起了作用。Winrar不抱怨图标路径不存在,它只使用默认路径。我每次尝试都会删除输出exe。Winrar以某种方式存储了一些东西(可能是缓存),除非我更改输出文件名,否则我将无法再获得图标。来回切换不起作用,我有一个文件名,不能再有图标了:D