如何在传递给函数时在 Inno Setup 中包含单引号?

问题描述 投票:0回答:2

我在函数中使用了字符串,如下所示。

我将一个字符串传递给一个特定的函数,如果该字符串中间有单引号,那么它就会被破坏。如何在 Inno Setup Pascal 脚本中包含单引号?

TempReadValue(
  StrArray,
  'log4j.appender.testing.File=INSERT INTO emp select Eid,'%K','%L'from DistributionTable  whereEname = 'Nails:chino'',
  LogFileName);

当传递到函数时,直到

%K
,之后它就中断了。谁能指导我如何读取/传递整个字符串直到
Nils:chino

感谢您的帮助。

inno-setup pascalscript
2个回答
3
投票

试试这个:

TempReadValue(StrArray, 'log4j.appender.testing.File=INSERT INTO emp select Eid,'+Chr(39)+'%K'+Chr(39)+','+Chr(39)+'%L'+Chr(39)+'from DistributionTable  whereEname = '+Chr(39)+'Nails:chino'+Chr(39), LogFileName);

这会起作用。


2
投票

你必须将单引号加倍:

TempReadValue(
  StrArray,
  'log4j.appender.testing.File=INSERT INTO emp select Eid,''%K'',''%L''from DistributionTable  whereEname = ''Nails:chino''',      
  LogFileName);

参见 https://www.freepascal.org/docs-html/ref/refse8.html

© www.soinside.com 2019 - 2024. All rights reserved.