Amir Szekely
-
2007-12-22
- labels: --> Scripting
- assigned_to: nobody --> kichik
- status: open --> closed-fixed
Version V2.33
I want to use WordAdd macro to modify the environment "path". If the path include chinese character, the function is error. I found it is caused by WordFind. For Example:
$(WordFind) "c:\[chinese character];other path..." ";" $R0
the $R0 is "c:\", the [chinese character] was lost.
the reason:
Function StrCmp can not deal with broken chinese character. For Example:
StrCpy $R0 "[chinese character]" 1
StrCmp $R0 "" +2 0
here, StrCmp jump to '+2', but $R0 is not "".
My resolvent:
I modified the "WordFunc.nsh":
Function: WordFind
change
>StrCmp${_WORDFUNC_S} $8 '' +2
to
>StrLen $R2 $8
>IntCmp $R2 0 +2