]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/full_win32_installer/DumpLog.nsh
Restore win32 dir from Branch-5.2 and update it
[bacula/bacula] / bacula / src / win32 / full_win32_installer / DumpLog.nsh
1 !define LVM_GETITEMCOUNT 0x1004\r
2 !define LVM_GETITEMTEXT 0x102D\r
3 \r
4 Function DumpLog\r
5   Exch $5\r
6   Push $0\r
7   Push $1\r
8   Push $2\r
9   Push $3\r
10   Push $4\r
11   Push $6\r
12 \r
13   FindWindow $0 "#32770" "" $HWNDPARENT\r
14   GetDlgItem $0 $0 1016\r
15   StrCmp $0 0 error\r
16   FileOpen $5 $5 "w"\r
17   StrCmp $5 0 error\r
18     SendMessage $0 ${LVM_GETITEMCOUNT} 0 0 $6\r
19     System::Alloc ${NSIS_MAX_STRLEN}\r
20     Pop $3\r
21     StrCpy $2 0\r
22     System::Call "*(i, i, i, i, i, i, i, i, i) i \\r
23       (0, 0, 0, 0, 0, r3, ${NSIS_MAX_STRLEN}) .r1"\r
24     loop: StrCmp $2 $6 done\r
25       System::Call "User32::SendMessageA(i, i, i, i) i \\r
26         ($0, ${LVM_GETITEMTEXT}, $2, r1)"\r
27       System::Call "*$3(&t${NSIS_MAX_STRLEN} .r4)"\r
28       FileWrite $5 "$4$\r$\n"\r
29       IntOp $2 $2 + 1\r
30       Goto loop\r
31     done:\r
32       FileClose $5\r
33       System::Free $1\r
34       System::Free $3\r
35       Goto exit\r
36   error:\r
37     MessageBox MB_OK error\r
38   exit:\r
39     Pop $6\r
40     Pop $4\r
41     Pop $3\r
42     Pop $2\r
43     Pop $1\r
44     Pop $0\r
45     Exch $5\r
46 FunctionEnd\r