Commit graph

23901 commits

Author SHA1 Message Date
Saveliy Tretiakov da13fb5a41 NtUserLoadKeyboardLayoutEx: Support KLF_REORDER and KLF_ACTIVATE.
NtUserActivateKeyboardLayout: Support HKL_NEXT, HKL_PREV, KLF_REORDER.


svn path=/trunk/; revision=25879
2007-02-22 19:41:10 +00:00
Magnus Olsen 06b4e06c8a win32k dx test are now compatible with all Windows and ReactOS that got a d3d8thk.dll file
rember that file are diffent for Windows 2000 and Windows XP/2003 ReactOS d38thk.dll are Windows XP/2003 compatible. 

svn path=/trunk/; revision=25878
2007-02-22 19:21:10 +00:00
Magnus Olsen 92213f75ef Move d3d8thk.h for it being use for apps that need todo win32k syscall for directx graphice part
svn path=/trunk/; revision=25877
2007-02-22 19:10:40 +00:00
Sylvain Petreolle 717a91df43 fix build
svn path=/trunk/; revision=25876
2007-02-22 18:48:01 +00:00
Alex Ionescu f141767094 - Rename LdrLoadModule to MmLoadSystemImage and change prototype. No code change except update callers and return ImageBaseAddress parameter when requested.
svn path=/trunk/; revision=25875
2007-02-22 18:30:50 +00:00
Alex Ionescu 31446c8a3b - Improve LdrGetModuleObject (in FreeLDR) to handle partial names too, so NTOSKRNL will still match NTOSKRNL.EXE. This is needed for forwarder support.
- Implement LdrPEFixupForward in FreeLDR and update LdrPEGetExportByName to use it, so that FreeLDR can now parse import tables with forwarders.
- Add call to MmInitSystem for Phase 0 in ExpInitializeExecutive.
- Completely redesign the way boot drivers are handled. They're now re-mapped during Phase 0 MmInit (part of the re-mapping is a hack until FreeLDR 2.5 is ready) and the IoMgr only does I/O stuff, not PE loading anymore (this is only half-true, we still process imports until FreeLDR 2.5 is done).
- Also re-design the way the module list head is initialized and used. LdrInit1 is now gone, Phase 0 MmInit now handles initializing it and copying boot loader data to it.
- Some code is still missing and functions still need to be improved.
- When FreeLDR 2.5 is ready some of the hacks will go away, they're #ifed for now to make it easy to switch.

svn path=/trunk/; revision=25874
2007-02-22 18:02:53 +00:00
Alex Ionescu 40e1082e3d - Rename ModuleListHead to PsLoadedModulesList.
- Start implementing some routines of the Mm SysLdr. Implemented MiSnapThunk and most of MiResolveImageReferences. The SysLdr has a lot of restrictions that the typical Ldr in user-mode doesn't, as well as manages imports and reference counts them, so the code can't be shared with ntdll's Ldr (this is also why real NT doesn't have an Ldr component, and this is in Mm).
- Fix some PE Header types that were wrong in our PSDK.

svn path=/trunk/; revision=25872
2007-02-22 00:01:52 +00:00
Magnus Olsen 6751f1721e adding a helper intEnableDriver it will be use for enable the dx driver for the graphice card.
rewrote NtGdiDdQueryDirectDrawObject so it only copy the cache data only. This will speed up allot. we only need call on NtGdiDdCreateDirectDrawObject yo setup the whole cache and enable the drv with the helper functions. the NtGdiDdQueryDirectDrawObject will be faster like this. using RtlCopyMemory insted for RtlMemMove  and allot other change in it. adding _SEH to NtGdiDdQueryDirectDrawObject so user can not crash it any longer. 

svn path=/trunk/; revision=25870
2007-02-21 22:19:31 +00:00
Timo Kreuzer b43aa6554f Silence some warnings
svn path=/trunk/; revision=25869
2007-02-21 22:04:59 +00:00
Alex Ionescu 012009365d - Implement ExpQueryModuleInformation to handle SystemModuleInformation, instead of LdrpQueryModleInformation. This version properly fills out all the data required and also supports (but doesn't yet handle) user-mode modules.
- Start work on supporting NT-compatible System Loader that properly fills out LDR_DATA_TABLE_ENTRY and handles imports correctly. Modified LdpPEProcessModule to properly build the data table entry and create the base name and directory name.
- Add stub for MiResolveImageRefernces.

svn path=/trunk/; revision=25868
2007-02-21 18:43:57 +00:00
Dmitry Gorbachev af1995f6f1 Thai translation (Sumath Aowsakulsutthi)
svn path=/trunk/; revision=25867
2007-02-21 18:23:59 +00:00
Dmitry Gorbachev 8f0b7ce68c Thai translation (Sumath Aowsakulsutthi)
svn path=/trunk/; revision=25866
2007-02-21 18:22:30 +00:00
Dmitry Gorbachev 4d0c6f3b50 Thai translation by Sumath Aowsakulsutthi (punth1 at gmail dot com)
svn path=/trunk/; revision=25865
2007-02-21 18:22:11 +00:00
Dmitry Gorbachev d6122e01fa Fix Italian resource file
svn path=/trunk/; revision=25863
2007-02-21 11:41:17 +00:00
Alex Ionescu 828eda9888 - Properly implement SystemLoadGdiDriverInformation.
- Properly implement SystemExtendServiceTableInformation, except that the SE_LOAD_DRIVER_PRIVILEGE check is currently disabled since our smss doesn't acquire it (and we should therefore ban it from loading win32k.sys...).
- Delete LdrpLoadImage, LdrpUnlaodImage, LdrpLoadAndCallImage.

svn path=/trunk/; revision=25862
2007-02-21 02:46:30 +00:00
Alex Ionescu effa3a52ef - Cleanup loader.c and comment some public routines (no code change).
- Temporarily remove routines to set per-page protection (this doesn't really break anything, just makes the OS less secure).

svn path=/trunk/; revision=25861
2007-02-21 01:57:02 +00:00
Alex Ionescu 226a94773d - Get rid of a bunch of multiboot crap FreeLDR was still doing for ReactOS.
- Remove some of the sixtuplicated routines to load a PE file. We're now down to a single function which takes an ImageType parameter for DLL/EXE/SYS, but even this is still temporary as the parameter will soon go away.
- We now load drivers in the same nice way that we load the kernel and DLLs, but we don't yet process their imports and relocate them in FreeLDR, because FreeLDR doesn't handle forwarders yet.
- We don't need a large hack in KiRosPrepareForSystemStartup anymore since the driver base addresses are now proper.
- Don't free boot-drivers anymore, since we'll load them in place soon.
- Don't load bootvid twice.
- Remove PAE stuff in FreeLDR since we don't support PAE anyway in the kernel and when we do, might as well implement it cleanly instead of relying on the broken FreeLDR stuff.

svn path=/trunk/; revision=25860
2007-02-20 20:02:52 +00:00
Ged Murphy b4f7cf3523 add chars to the edit box when either double clicked or the select button is hit
svn path=/trunk/; revision=25848
2007-02-19 23:56:16 +00:00
Eric Kohl d8e1e7bba4 Enable the user to set the size of captions, caption buttons, menu bars and croll bars.
svn path=/trunk/; revision=25844
2007-02-19 16:12:38 +00:00
Dmitry Gorbachev f49c3528f3 Fix a bug
svn path=/trunk/; revision=25842
2007-02-19 13:20:09 +00:00
Thomas Bluemel 5c7f9d04ce Minor fixes, thanks Ged
svn path=/trunk/; revision=25841
2007-02-19 13:15:28 +00:00
Saveliy Tretiakov 148aa8601e Patch from Preston:
fix bug 1918 "Keyboard config unavailable".


svn path=/trunk/; revision=25834
2007-02-18 16:35:09 +00:00
Eric Kohl b6dc9d8a3d Reenable the preview control notification. The user can now select the GUI item clicking it in the preview control.
svn path=/trunk/; revision=25832
2007-02-17 21:40:39 +00:00
Saveliy Tretiakov abf9c6e638 Patch by Alexey Zavyalov (Generex).
Implement SetLocaleInfoA, SetLocaleInfoW.


svn path=/trunk/; revision=25831
2007-02-17 15:46:25 +00:00
Saveliy Tretiakov 4ea3e26092 Patch by Andrey Janzen (virus126).
Fix copy\paste bug in calc.


svn path=/trunk/; revision=25830
2007-02-17 15:33:57 +00:00
Magnus Olsen e565b89550 adding file dump.c it contain printf stuff to dump some struct to the screen it can make debuging more easy. but if u build reactos with DBG=0 you will not see the dump of the stuct I mabe will add a option to it when u start this tools so it dump data when u use the options.
svn path=/trunk/; revision=25829
2007-02-17 15:01:01 +00:00
Thomas Bluemel 316942e612 - Move around definitions to make the code a bit more modular
- Use an about menu instead of an button

svn path=/trunk/; revision=25828
2007-02-17 09:32:33 +00:00
Ged Murphy 15b0d2660f add to bootcd to highlight the paint issue
svn path=/trunk/; revision=25827
2007-02-17 00:23:53 +00:00
Ged Murphy aed1c8ece5 add to build
svn path=/trunk/; revision=25826
2007-02-17 00:22:21 +00:00
Ged Murphy 8cc6eff6ae - halfplement charmap.exe
- tested in ROS, by no means perfect but we cant least see the various glyphs within a font
- this app highlights an issue with our paint code (not yet investigated)

svn path=/trunk/; revision=25825
2007-02-17 00:13:35 +00:00
Magnus Olsen 77c7470539 adding more test case for test_NtGdiDdQueryDirectDrawObject not complete yet
svn path=/trunk/; revision=25824
2007-02-16 20:14:24 +00:00
Sylvain Petreolle 0273f0c479 fix include file case
svn path=/trunk/; revision=25817
2007-02-16 16:57:09 +00:00
Magnus Olsen a20e414f6a fixed all dam warings before some start nag on me
svn path=/trunk/; revision=25816
2007-02-16 16:48:54 +00:00
Magnus Olsen 11e0777755 adding a NULL test for NtGdiDdQueryDirectDrawObject
svn path=/trunk/; revision=25815
2007-02-16 16:43:27 +00:00
Magnus Olsen 9e44309042 -- Rewrite how we should do syscall now we define the syscall number in a include files. if we getting syscall table for another windows version and sp we can simple adding it to a another include file and use that file to run other that windows. rember the syscall table is diffent in all version of windows and reactos. if u compile this version in vs u will only be avail run it in windows 2000 sp4 and not under any windows version.
-- add one more testcase (NtGdiDdDeleteDirectDrawObject)
-- start adding thrid testcase (NtGdiDdQueryDirectDrawObject), this one will take bit longer to completed but I add a stub for it for now. 

svn path=/trunk/; revision=25814
2007-02-16 16:27:46 +00:00
Maarten Bosma eab0f7c139 Lester Kortenhoeven (lester(at)kortenhoeven(dot)de):
* CP_ACP changed into CP_UTF8
* removed unnecessary code in xml.c
* fix memory leak
* add more programs

svn path=/trunk/; revision=25812
2007-02-16 11:07:28 +00:00
Hervé Poussineau 0470f1582d Set correct value for Characteristics (tested by Colin_Finck on IRC)
svn path=/trunk/; revision=25810
2007-02-15 20:39:33 +00:00
Eric Kohl 4101f39dc4 - Declare local functions static and get rid of prototypes by moving functions around.
- Clean up the code. No changes to the functionality.

svn path=/trunk/; revision=25809
2007-02-15 20:24:38 +00:00
Alex Ionescu c731ec2a5a - Small placeholder change for future Cm code:
- Added newcm.c which will contain some new Cm code part of the Cm Rewrite but not in the rewrite branch (used solely for supporting CmGetSystemControlValues).
  - Added System Control Vector which supports all the registry flags that Windows 2003 SP1 supports as well.
- The most important part of this support, at least for us, is to get boot-time time zone support working properly. We can worry about the other options later.
- Update KrnlFun for previous DPC/HAL fixes.

svn path=/trunk/; revision=25806
2007-02-15 17:44:04 +00:00
Hervé Poussineau 973093ca7b Add missing 'Characterists' registry key for netcards. Fixes part of bug 2034
svn path=/trunk/; revision=25805
2007-02-15 17:34:26 +00:00
Eric Kohl 9d58eb743e - Enable/disable the size updown control when another window item is selected.
- Remove the text when the size edit control gets disabled.
- Disable the secondary color for the window item.

svn path=/trunk/; revision=25804
2007-02-15 14:12:36 +00:00
Dmitry Gorbachev 9645a00e53 - fix "keyboard does not respond" bug on Biostar board (thanks to Peter Krawies)
- fix printf()

svn path=/trunk/; revision=25803
2007-02-15 10:57:38 +00:00
Alex Ionescu eaa061328d - You all s^H^H^H^H^H^H^H^H^H Fix build error.
svn path=/trunk/; revision=25802
2007-02-14 20:50:46 +00:00
Alex Ionescu 48d44183ec - Linux sucks
svn path=/trunk/; revision=25801
2007-02-14 20:47:43 +00:00
Alex Ionescu d006bab906 - Fixup and enable my new HAL IRQL implementation from a couple of months ago, and remove the temporary Mm hacks from Dmitry Gorbachev, since DPCs don't interrupt DISPATCH_LEVEL Code anymore.
- This fixes a critical system malfunction and architectural bug, as well as speeds up ReactOS incredibly -- setup takes seconds again, and boot is almost instantenous (except the Explorer loading bug).
- Proper fix for bootvid regression that Aleksey "Fixed". Video mode is now properly setup wether in setup or non-setup mode, so bootvid works again.
- Enable bootvid in freeldr.ini, currently using only /SOS mode since full-screen logo isn't implemented yet.

svn path=/trunk/; revision=25800
2007-02-14 20:30:33 +00:00
Alex Ionescu e542b2c634 Object Manager fixes based on bug reports from Aleksey Bragin:
- ObpReferenceProcessObjectByHandle:
  - Remove PAGED_CODE
  - Use InterlockedIncrement instead of InterlockedExchangeAdd.
- ObpInsertHandleCount: Fix calculation of the handle database size, fixing potential pool corruption/overwrite situations.
- ObpChargeQuotaForObject: Write proper code for charging the quota.
- ObpDecrementHandleCount:
  - Get ObjectType from caller instead of doing the extra operation.
  - If there's no handle database, then don't setup a handle entry.
- ObpIncrementHandleCount is PAGED_CODE.
- ObpCloseHandle: Do proper logic for determining if we should raise an exception, fail, or bugcheck the system when an invalid handle is being closed.
- ObpSetHandleAttributes:
  - Not PAGED_CODE.
  - Allow operations on kernel objects.
  - Use the Access Protect Close Bit in the GrantedAccess instead of an OBJ_PROTECT flag in the ObAttributes.
- ObpCloseHandleCallback: Sweep/Enumerate Routines are BOOLEAN, not VOID.
- ObDuplicateObject:
  - Clear the audit mask if auditing isn't set.
  - Always duplicate OBJ_AUDIT_OBJECT_CLOSE if it's set.
  - Clear the handle entry before writing it.
  - Always propagate ACCESS_SYSTEM_SECURITY as a desired access.
- ObFindHandleForObject: Use ObReferenceProcessHandleTable instead of directly accessing the pointer.
- ObInsertObject: Dereference symbolic links when they collide during an insert, since a reference was already added.
- NtDuplicateObject: Clear out the TargetHandle to assume failure.
- ObpCaptureObjectName: Use RtlCopyMemory which is faster.
- ObpAllocateObject: Fix check for quota usage.
- ObCreateObjectType:
  - Make sure that the object type name is wchar-aligned.
  - Add support for LPC Waitable Ports.
  - Initialize Object Locks.

svn path=/trunk/; revision=25799
2007-02-14 17:51:48 +00:00
Saveliy Tretiakov 1102b7a6e9 Post WM_INPUTLANGCHANGE to thread's focus windows when keyboard layout is changed.
svn path=/trunk/; revision=25798
2007-02-14 13:00:38 +00:00
Saveliy Tretiakov 4db9f2ba75 - Make NtUserLoadKeyboardLayoutEx accept 6 params
- Always get default locale from ntoskrnl
- Fix some small bugs


svn path=/trunk/; revision=25797
2007-02-13 19:50:06 +00:00
Magnus Olsen 26b059ca40 small prepare for rished20 sync for wine. so the sync goes allot easy
update richedit.h 
adding tom.h  <- from wine cvs 11/2-2007 the tom.idl does not exists in windows ?

svn path=/trunk/; revision=25796
2007-02-12 21:23:32 +00:00
Magnus Olsen d6866b6242 patch from Physicus, implement TOOLTIPS_NotifyFormat, it now retrurn the type of the string if it unicode or ansi.
before it did not return any type at all. it did a heap crash from downloader mangers when it try figout what type
of sting the toolstips use. it is tested in 0.3.1 and not whole implemnent is tested yet. it should be right for all
case.

svn path=/trunk/; revision=25794
2007-02-12 18:37:05 +00:00