You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Inno Setup调用LoadStringFromFile始终报"类型不匹配"错误

解决Inno Setup中LoadStringFromFile的"Type mismatch"错误

你遇到的类型不匹配错误,核心原因是LoadStringFromFile函数的返回值是布尔类型(Boolean),用来标识读取操作是否成功,而非读取到的文件内容。你直接把这个布尔值赋值给String类型的Result,自然会触发类型不匹配。

修正后的代码

function getPath(Param: String): String;
var 
  line: String;
  filePath: String;
begin
  Result := ''; // 初始化返回值
  filePath := ExpandConstant('{commonpf64}\appfolder\sometextfile.txt');
  
  // 先校验读取是否成功,再返回内容
  if LoadStringFromFile(filePath, line) then
  begin
    Result := line;
  end;
end;

关键说明

  • LoadStringFromFile的使用逻辑:第一个参数传入文件路径,第二个参数是用于接收读取内容的字符串变量,函数返回True表示读取成功,False表示失败。
  • 路径字符串建议用Inno Setup默认的String类型(对应UnicodeString),避免AnsiString带来的编码问题,尤其是路径包含中文或非ASCII字符时。
  • 初始化Result为空字符串,避免读取失败时返回不确定的值。

内容的提问来源于stack exchange,提问作者Wai Wong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 11:17:08