Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Ersetzen von Hochkommatas in IS-Script?


3 replies to this topic

ANo

ANo
  • Full Members
  • 179 posts

Posted 02 March 2010 - 14:55

Hallo, wie muß ich einen String umwandeln, damit dieser korrekt behandelt wird?

Der String soll in eine MSI-Tabelle rein per IS-Script.

sText = "Uncle Tom's cabin";
StrReplace( sText, "'", "[\']", 0 ); <-- funktioniert nicht
StrReplace( sText, "'", "[\'][\']", 0 ); <-- funktioniert nicht
StrReplace( sText, "'", "\'", 0 ); <-- funktioniert nicht
StrReplace( sText, "'", "\'\'", 0 ); <-- funktioniert nicht

Bin mit meinem Latein am Ende.
Gruß
André

sascha5782

sascha5782
  • Full Members
  • 6 posts

Posted 02 March 2010 - 17:03

Hallo,

ich würde das Hochkommata im 2. Parameter escapen.

Dann sähe der Aufruf wie folgt aus:

StrReplace( sText, "\'", "\'\'", 0 )

Aber was willst Du eigentlich genau erreichen?



ANo

ANo
  • Full Members
  • 179 posts

Posted 03 March 2010 - 17:44

Hallo, ich habe das Problem gefunden:

I found a paragraph in the help now: SQL Syntax:

"The Windows Installer SQL syntax does not support the escaping
of single-quotes (ASCII value 39) in a string literal.
However, you can fetch or create the record,
set the field with the StringData or IntegerData property,
and then call the Modify method.
Alternatively, you can create a record and use
the parameter markers (?) described in Execute method.
You can also do this using the database functions MsiViewExecute,
MsiRecordSetInteger, and MsiRecordSetString."

Ich schreibe einige Dinge in die ListBox-Tabelle mit MSI-SQL, und da falle
ich eben mit den Hochkommatas auf die Nase.

Ich habe mich mal wieder dusslich gesucht.

Hallo Sascha5782, danke für Deine Antwort.

Also, wie in der Hilfe beschrieben, es geht halt nicht.

Kann man nicht ein Topic aufmachen, wo nur beschrieben wird, was der WI
(und IS) nicht kann?
(Ein paar Dinge hätte ich schon:
- keine Major Upgrades mit Assembly-Installation im GAC,
- keine Minor Upgrades, weile diese nicht von DVD aus funktionieren, ...)

Dann schaut man da zuerst nach und spart sich jede Menge Ärger.

Gruß
André




Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 04 March 2010 - 09:58

QUOTE
- keine Minor Upgrades, weile diese nicht von DVD aus funktionieren, ...)
Wieso nicht? enn das Volume Label der DVD mit dem Eintrag in der MEDIA-Tabelle übereinstimmt, sollte das eigentlich funktionieren. Aber das ist eher etwas für ein separates Topic.