Rev 100 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 100 | Rev 101 | ||
---|---|---|---|
Line 13... | Line 13... | ||
13 | // Win NT4: 02 00 00 00 (Win96/Cairo?) |
13 | // Win NT4: 02 00 00 00 (Win96/Cairo?) |
14 | // Win95 (with IE4), 98: 04 00 00 00 |
14 | // Win95 (with IE4), 98: 04 00 00 00 |
15 | // Win Me, 2000, XP: 05 00 00 00 (NT4+IE4, NT5?) |
15 | // Win Me, 2000, XP: 05 00 00 00 (NT4+IE4, NT5?) |
16 | totalEntries: DWORD; // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
16 | totalEntries: DWORD; // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
17 | nextPossibleID: DWORD; // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
17 | nextPossibleID: DWORD; // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
18 | recordLength: DWORD; // 0x181 = ANSI records |
18 | recordLength: DWORD; // 0x118 = ANSI records |
19 | // 0x320 = Unicode records |
19 | // 0x320 = Unicode records |
20 | totalSize: DWORD; // sum of all "originalSize" values; |
20 | totalSize: DWORD; // sum of all "originalSize" values; |
21 | // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
21 | // Only Win95 (without IE4) and Win NT4, other OS versions will use the registry instead and might write information on WM_ENDSESSION for compatibility reasons |
22 | end; |
22 | end; |
23 | 23 | ||
Line 62... | Line 62... | ||
62 | PRbVistaRecord2Head = ^TRbVistaRecord2Head; |
62 | PRbVistaRecord2Head = ^TRbVistaRecord2Head; |
63 | TRbVistaRecord2Head = packed record |
63 | TRbVistaRecord2Head = packed record |
64 | version: int64; // Always 02 00 00 00 00 00 00 00 |
64 | version: int64; // Always 02 00 00 00 00 00 00 00 |
65 | originalSize: int64; |
65 | originalSize: int64; |
66 | deletionTime: FILETIME; |
66 | deletionTime: FILETIME; |
67 | (* sourceUnicode: BSTR; *) |
- | |
68 | sourceCountChars: DWORD; // including NUL |
67 | sourceCountChars: DWORD; // including NUL |
69 | //sourceUnicode: array[0..sourceCountChars-1] of WideChar; |
68 | //sourceUnicode: array[0..sourceCountChars-1] of WideChar; |
70 | end; |
69 | end; |
71 | 70 | ||
72 | type |
71 | type |
73 | // Windows 95 (tested with 4.00.950 and Win95b) + Windows NT 4 |
72 | // Windows 95 (tested with 4.00.180 and above) + Windows NT 4 |
74 | // HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\BitBucket: PurgeInfo (Binary) |
73 | // HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\BitBucket: PurgeInfo (Binary) |
75 | // TODO: also explain this in FORMAT.md ? |
74 | // TODO: also explain this in FORMAT.md ? |
76 | PRbWin95PurgeInfo = ^TRbWin95PurgeInfo; |
75 | PRbWin95PurgeInfo = ^TRbWin95PurgeInfo; |
77 | TRbWin95PurgeInfo = packed record |
76 | TRbWin95PurgeInfo = packed record |
78 | cbSize: DWORD; // 0x48 = 72 |
77 | cbSize: DWORD; // 0x48 = 72 |
Line 86... | Line 85... | ||
86 | // ... |
85 | // ... |
87 | // Bit 25: Drive Z |
86 | // Bit 25: Drive Z |
88 | // Bit 26: "Network home drive" |
87 | // Bit 26: "Network home drive" |
89 | // Bit 27: Global |
88 | // Bit 27: Global |
90 | // Bit 28..31 (MSB) unused |
89 | // Bit 28..31 (MSB) unused |
91 | dummy: DWORD; // "dummy to force a new size" ?! (TODO: was there a Windows version that had a smaller size (0x44), i.e. a different version of this record?) |
90 | dummy: DWORD; // "dummy to force a new size" ?! But the 0x48 format was already in Win95 beta build 180, which is the first known build with this recycle bin implementation! |
92 | end; |
91 | end; |
93 | 92 | ||
94 | implementation |
93 | implementation |
95 | 94 | ||
96 | end. |
95 | end. |