Get extention of file
From NSIS Wiki
| Author: opher (talk, contrib) |
[edit] Description
This is based on the work of Afrow UK. This more accuretly reports the extention: For path "C:\some dir\some file with no extention"
Afrow UK's implementation will return the original string as "extention"
For path "C:\Installation.CD\some file with no extention"
Afrow UK's implementation will return "CD\some file with no extention" as extention.
In both cases this function will return "" (empty) as extention.
[edit] Usage
Push "C:\some path\filename.extention" Call GetFileExt Pop $R0 ; $R0 = "extention"
[edit] The Function
Function GetFileExt Exch $0 ; input string Push $1 Push $2 StrCpy $1 0 loop: IntOp $1 $1 - 1 StrCpy $2 $0 1 $1 StrCmp $2 "" empty StrCmp $2 "\" empty StrCmp $2 "." found Goto loop empty: StrCpy $0 "" goto exit found: IntOp $1 $1 + 1 StrCpy $0 $0 "" $1 exit: Pop $2 Pop $1 Exch $0 FunctionEnd

