1 | !define LVM_GETITEMCOUNT 0x1004
|
---|
2 | !define LVM_GETITEMTEXT 0x102D
|
---|
3 |
|
---|
4 | !macro DumpLog un
|
---|
5 | Function ${un}DumpLog
|
---|
6 | Exch $5
|
---|
7 | Push $0
|
---|
8 | Push $1
|
---|
9 | Push $2
|
---|
10 | Push $3
|
---|
11 | Push $4
|
---|
12 | Push $6
|
---|
13 |
|
---|
14 | FindWindow $0 "#32770" "" $HWNDPARENT
|
---|
15 | GetDlgItem $0 $0 1016
|
---|
16 | StrCmp $0 0 error
|
---|
17 | FileOpen $5 $5 "w"
|
---|
18 | StrCmp $5 0 error
|
---|
19 | SendMessage $0 ${LVM_GETITEMCOUNT} 0 0 $6
|
---|
20 | System::Alloc ${NSIS_MAX_STRLEN}
|
---|
21 | Pop $3
|
---|
22 | StrCpy $2 0
|
---|
23 | System::Call "*(i, i, i, i, i, i, i, i, i) i \
|
---|
24 | (0, 0, 0, 0, 0, r3, ${NSIS_MAX_STRLEN}) .r1"
|
---|
25 | loop: StrCmp $2 $6 done
|
---|
26 | System::Call "User32::SendMessageA(i, i, i, i) i \
|
---|
27 | ($0, ${LVM_GETITEMTEXT}, $2, r1)"
|
---|
28 | System::Call "*$3(&t${NSIS_MAX_STRLEN} .r4)"
|
---|
29 | FileWrite $5 "$4$\r$\n"
|
---|
30 | IntOp $2 $2 + 1
|
---|
31 | Goto loop
|
---|
32 | done:
|
---|
33 | FileClose $5
|
---|
34 | System::Free $1
|
---|
35 | System::Free $3
|
---|
36 | Goto exit
|
---|
37 | error:
|
---|
38 | MessageBox MB_OK "Could not create Log-File!" /SD IDOK
|
---|
39 | exit:
|
---|
40 | Pop $6
|
---|
41 | Pop $4
|
---|
42 | Pop $3
|
---|
43 | Pop $2
|
---|
44 | Pop $1
|
---|
45 | Pop $0
|
---|
46 | Exch $5
|
---|
47 | FunctionEnd
|
---|
48 | !macroend
|
---|
49 | !insertmacro DumpLog ""
|
---|
50 | !insertmacro DumpLog "un."
|
---|