- Implement IPersistFolder2 for control panel shell folder
- Replace _InsertMenuItem with unicode
- Pass the pidl of shellfolder and selected drive to SH_ShowDriveProperties to construct a valid IDataObject which is passed to drive PropertySheet handlers
- Release HPSX array only if it was constructed
- Optimize AddShellPropSheetExCallback for file property dialog
- Pass the pidl of the parent shell folder and selected item to SH_ShowPropertiesDialog and construct a IDataObject from it
- Check for success for created IDataObject and HPSX array
- Add a lot of buffer checks for the OpenNew shell extension
- Pass the full filename of the item from Admin Tools shellfolder when IShellFolder_GetDisplayNameOf is called with SHGDN_FORPARSING
- Implement initializing the AdminTools folder
- Implement IShellFolder_SetNameOf for the desktop shell folder to support renaming desktop items and sub folders
- Implement ISFHelper interface for desktop shell folder to support deleting with backspace key and fixes the new item shell service for items and directories
- Implement hiding (deleting) shell extensions from desktop
- Display a messagebox if shell extensions should be really deleted
- Fix the IShellFolder_GetAttributesOf for the Mycomputer shell folder
- Implement changing drive name with rename verb using IShellFolder_SetNameOf (MyComputer)
- Implement Initializing the MyComputer shell folder properly
- Fix Shellfolder attributes for MyDocuments shell folder
- Fix Shellfolder attributes for Netplaces shell folder
- Implement Initializing the Netplaces shell folder properly
- Remove the 'properties' and 'open' verb from recycle bin shell folder, these verbs are statically generated
- Directories cannot have the link attribute
- Implement IShellExtInit interface for the new item shell service
- Implement the default context menu based on the existing item context menu and background context menu and delete old implementation
- Implement copy&paste of files and directories
- Implement creating links to files
- Check if a dynamic shell extension has already been loaded
- Free static / dynamic shell extensions on release
svn path=/trunk/; revision=35476
Bug 3659 shell32 pl-PL update by Maciej Bialas
Bug 3664 Italian resources update by Paolo Devoti
Bug 3665 Some translations
svn path=/trunk/; revision=35455
1) Don't assert if loaded from setup. On NT this means special things, but we don't care about that for now.
2) Add to txtsetup.sif along with the other core FS drivers. This will eventually allow installing from ramdisk as well (and later, over the network)
3) Add to hivesys_i386.inf so that the driver is initialized.
RAM disk now works flawlessly on x86 -- just make sure to follow the previous instructions, and add <size of your RAM disk> to your total memory available to ReactOS.
svn path=/trunk/; revision=35402
1) First, remove the hack in bootmgr.c that looked for a reactos.img.
2) Instead, read the command line to the kernel, and check for /RDIMAGEPATH. If found, load the ramdisk in the loader.
3) This uses the same routine as the previous hack, but enhances it with actual status and progress printouts.
4) Finally, update usetup to generate a ReactOS (RAM Disk) entry on DBG builds, under the WinLDR one.
Also fixed a bug where, on MiniTUI, the text sent to UiDrawProgressBarCenter would be ignored.
This patch does not result in working RAM disk support yet.
To test the FreeLDR side of things, you need to create a ramdisk file: this is easy.
Preferred way right now is to use qemu-img to create a standard QEMU image. Then install ReactOS on it and configure it. This is now your ramdisk.
Make your image about 100MB; this is how much ReactOS requires to install right now.
Now on your "official" QEMU image, you can delete everything except freeldr.sys and freeldr.ini. Or don't, if it's large enough.
Now add the reactos.img to your official image. You should have at least 100MB free space.
Now when you boot the ReactOS (RAM disk) entry, it should boot up until the kernel, which will panic since there's no ramdisk support yet.
Note that you can't just create a QEMU image and drop files in it -- it must be properly formatted and have the ReactOS boot sector:
The RAM disk isn't just a collection of files, it's an entire virtual drive, so that's why you must first officially install ReactOS on it.
svn path=/trunk/; revision=35401
- Truly separate i8042BasicDetect from i8042DetectKeyboard and i8042DetectMouse: It now only does the CTRL_SELF_TEST, any other specific detections are done in their respective functions
- Only set KEYBOARD_PRESENT and MOUSE_PRESENT, when all respective detections completed successfully
Might fix bug #3550
svn path=/trunk/; revision=35387