Commit graph

15747 commits

Author SHA1 Message Date
Alex Ionescu
358a2167ab Part three of patch...
- Created utils.c for the following new functions:
        * BasepCreateStack - Creates a stack for a Thread or Fiber
        * BasepInitializeContext - Initializes the Context for a Process, a Thread, or a Fiber
        * BasepConvertObjectAttributes - Creates a OBJECT_ATTRIBUTES structure based on Win32
                                         lpSecurityAttributes and name.
        * BasepFreestack - Frees the stack created in case of a failure inside code using it.
        * BasepMapFile - Converts a Win32 Path to NT Path and maps a file into a section.
        * Base 8-bit String conversion functions - Use new, more efficient way to select
          between OEM/ANSI strings, based on MSDN Article by Matt Pietrek. Other code needs
          to be chand to use them.
Also added the new ASM for the startup thunks. All of this is still unused and only being committed to simply the diff output. Credits go to Matt Pietrek and his excellent MSDN article for the 8-bit conversion functions and implementaion details.

svn path=/trunk/; revision=16543
2005-07-12 05:00:33 +00:00
Alex Ionescu
e6523bb71e Second part of patch, implements the new RTL functions which will be used (not used by kernel yet).
- RtlCreateUserProcess:
        * Created RtlpInitEnvironment to manage Environment Block creation. Rougly based on
          old KlInitPeb code but with some optimizations.
        * Don't ignore Process Security Descriptor if one was specified.
        * Don't ignore ZeroBits, get correct entrypoint, and don't assume PEB address.
        * Don't close handle of section before closing process handle on failure.
        * Support new undocumented flag which pre-allocates 1MB of memory for Native Processes
        * FIXME: Hande duplication should be done, but wasn't and still isn't.
    
    - RtlpCreateUserStack:
        * New function to create a stack for a Thread, similar to BasepCreateStack but
          has some differences related to StackCommit/StackReserve.
        * Also create Guard Page
        
    - RtlpFreeUserStack:
        * Undoes what the function above does, in case of failure in code using it.
        
    - RtlCreateUserThread:
        * Use the new functions instead of rosrtl.
        
    - RtlInitializeContext:
        * New function similar to BasepInitializeContext but;
            > Uses a single entrypoint, not many possible thunks like Kernel32 (no need)
            > The starting EFLAGS is Interrupts Enabled, not IOPL 3.
            > We don't initialize the same Context Flags
            > The initial context registers are different
            
    - RtlFreeUserThreadStack
        * Don't assume the TEB address
          
    - RtlExitUserThread
        * Remove deprecated stack-switching semantics and use new TEB flag to tell the Kernel
          to deallocate the stack for us.

svn path=/trunk/; revision=16542
2005-07-12 04:41:41 +00:00
James Tabor
36a1230e2b Start integrating and implementing key board functions. More Wine porting with ROS.
svn path=/trunk/; revision=16541
2005-07-12 02:45:33 +00:00
Alex Ionescu
a10ed009b7 Partial patch of larger rosrtl removal patch. This one merely is a structure fix patch, and renames/corrects RTL_USER_PROCESS_INFORMATION (which had the totally wrong names) as well as updates the TEB to the latest version. It also fixes SECTION_IMAGE_INFORMATION to have the right format and names. Also, some callers of CreateProcessW are modified to not send a constant string as lpCommandLine (this was illegal and will crash on Windows/my patch). INITIAL_TEB was also renamed to the more correct fields, although they won't make sense with the current rosrtl/rtl implementation, the names will only make sense with the next patch. Finally NtTerminateThread was fixed to support sending NULL as handle, and PspExitThread was updated to work with the new FreestackOnExit flag, both of which will be used in the next patch.
svn path=/trunk/; revision=16540
2005-07-12 01:56:14 +00:00
Filip Navara
e36f90a9f9 Move Interlocked* routines from ROSRTL to separate INTRLCK library since ROSRTL is going to be removed.
svn path=/trunk/; revision=16539
2005-07-11 23:32:55 +00:00
Thomas Bluemel
fcc95c66a8 return the length of the string excluding the null-termination character on success in GetEnvironmentVariable(). Thanks to Hartmut.
svn path=/trunk/; revision=16536
2005-07-11 20:30:33 +00:00
Hartmut Birr
9b991b83fd Check for a valid console handle in SetConsoleMode.
svn path=/trunk/; revision=16535
2005-07-11 18:22:53 +00:00
Alex Ionescu
eb4f7c8b2f IPConfig Rewrite (Tim Jobling <tjob800@yahoo.co.uk>)
*  Relicense to GPL. 
    *  Display NodeType with meaningfull Human readable names.
    *  Exclusively use TCHAR strings.
    *  Display Physical Address, DHCP enabled state, IP Addresses/Netmasks,
    *  Default Gateway, DHCP server and DHCP Lease times.
    *  Parse command line options.
    *  Default to only showing the IP/SM/DG is no options specified
    *  Handel option: /All and /?
    *  Display message about all unimplemented options.
    *  Changed C++ style commenting to C style

svn path=/trunk/; revision=16534
2005-07-11 17:55:15 +00:00
Gé van Geldorp
34fd8c7135 Sebastian Gasiorek <zebasoftis@gmail.com>
Polish resource files

svn path=/trunk/; revision=16533
2005-07-11 07:51:09 +00:00
James Tabor
c81ba78f7b Connect UnrealizeObject and test debug prints. I assume arg count is one not two. If wrong please correct me.
svn path=/trunk/; revision=16532
2005-07-11 04:56:04 +00:00
James Tabor
6a38a2f69d Fix error return for WIN_ListChildren.
svn path=/trunk/; revision=16531
2005-07-11 02:43:24 +00:00
Magnus Olsen
5c73d34569 forget clean up after me
svn path=/trunk/; revision=16530
2005-07-10 22:23:00 +00:00
Magnus Olsen
58d41e3c76 second try, thx w3seek found out it should be charterer not byte
svn path=/trunk/; revision=16529
2005-07-10 22:19:57 +00:00
Magnus Olsen
e43573196c The return size calculation's of GetEnvironmentVariable string was wrong. Thx to <Bizzy_D> to find out cd %windir% did not work. Now it will
svn path=/trunk/; revision=16528
2005-07-10 22:12:07 +00:00
Gé van Geldorp
67af25e720 i386DX . <i386dx@hotmail.com>
Belgian (point/Flemish) keyboard layout

svn path=/trunk/; revision=16527
2005-07-10 22:05:48 +00:00
Magnus Olsen
fe2f78c54c quick dirty hack getting our copy working with 1>null by me
so we can create reactos iso on ros. bug reported by harteex and Brandon Turner, thanks to Brandon to hunt down where the bug was. 

svn path=/trunk/; revision=16526
2005-07-10 21:26:51 +00:00
Eric Kohl
a5b363cd94 - Implement CM_Get_Global_State/CM_Get_Global_State_Ex.
- All RPC-Calls to umpnpmgr return CONFIGRET.

svn path=/trunk/; revision=16525
2005-07-10 11:49:10 +00:00
Eric Kohl
de63015392 Fix a string length calculation bug in StringTableDuplicate.
svn path=/trunk/; revision=16524
2005-07-09 15:22:07 +00:00
Aleksey Bragin
122bcd196f Add dependence from pnp_client also, since in fact it uses it (includes pnp_c.h). It worked before only because lib/setupapi depends on pnp_c, and it's build earlier than umpnpmgr.
svn path=/trunk/; revision=16523
2005-07-09 13:23:05 +00:00
Thomas Bluemel
97679e7210 fixed the prototypes of GetConsoleAlias, GetConsoleAliasExes and GetConsoleAliasesLength
svn path=/trunk/; revision=16522
2005-07-09 10:31:30 +00:00
James Tabor
c0fb7448b1 Implement MDICascade, MDITile and WIN_ListChildren. This will help Winefile cascade and tile windows. WIN_ListChildren is tmp located here in mdi.c for now.
svn path=/trunk/; revision=16521
2005-07-09 08:54:43 +00:00
Casper Hornstrup
6c73106dfd Don't rebuild the module if a library is changed. Relinking the module is enough.
svn path=/trunk/; revision=16520
2005-07-09 07:50:48 +00:00
James Tabor
5dd6792d1d Fix masking.
svn path=/trunk/; revision=16519
2005-07-09 05:21:10 +00:00
James Tabor
ff7e7c8ae6 Kill debug print out.
svn path=/trunk/; revision=16518
2005-07-09 04:54:01 +00:00
James Tabor
7022204505 Implement ModifyMenu A & W.
svn path=/trunk/; revision=16517
2005-07-09 04:23:34 +00:00
James Tabor
b2bf468fad Implement GetMenuString A & W. Not fully tested.
svn path=/trunk/; revision=16516
2005-07-09 04:19:35 +00:00
James Tabor
5e3cc7bc94 Implement CheckMenuRadioItem. Not fully tested.
svn path=/trunk/; revision=16515
2005-07-09 04:15:44 +00:00
James Tabor
6b36fb6848 Implement DrawMenuBar.
svn path=/trunk/; revision=16514
2005-07-09 04:11:36 +00:00
Casper Hornstrup
91269f987b Check automatic dependencies of referenced object library modules on make <module>_depends
svn path=/trunk/; revision=16513
2005-07-08 19:55:30 +00:00
Thomas Bluemel
876fc32e53 Fixed enumerating the drive strings in SetupCreateDiskSpaceListW
svn path=/trunk/; revision=16512
2005-07-08 19:51:37 +00:00
Thomas Bluemel
d556da508d allocate enough memory for strings, lstrlenW returns the length of the string in characters, not bytes.
svn path=/trunk/; revision=16511
2005-07-08 19:21:28 +00:00
KJK::Hyperion
4c9e39ee83 PE loader: corrected an assertion (fixes bug reported by GvG), added a sanity check, return STATUS_INVALID_IMAGE_PROTECT in case of unrecognized PE signature (to match Windows behavior), removed evil STATUS_UNSUCCESSFUL, corrected successful return code
Memory manager: return STATUS_INVALID_IMAGE_NOT_MZ when no loader accepts the format (to match Windows behavior)

svn path=/trunk/; revision=16510
2005-07-08 16:37:07 +00:00
James Tabor
622c4d86e9 Implement NtUserGetAsyncKeyState and support for TrackMouseEvent.
svn path=/trunk/; revision=16509
2005-07-08 12:16:47 +00:00
James Tabor
6c4cbed9a2 Implement TrackMouseEvent.
svn path=/trunk/; revision=16508
2005-07-08 12:15:07 +00:00
James Tabor
e6ce20818e Add defines for TrackMouseEvent.
svn path=/trunk/; revision=16507
2005-07-08 12:13:23 +00:00
Gé van Geldorp
a340c27ec1 zebasoftis <zebasoftis@gmail.com>:
Polish Resource File for setupapi

svn path=/trunk/; revision=16506
2005-07-08 09:01:23 +00:00
Gé van Geldorp
d3558a7c23 zebasoftis <zebasoftis@gmail.com>:
Polish Resource File for user32

svn path=/trunk/; revision=16505
2005-07-08 08:56:07 +00:00
Gé van Geldorp
8895954185 zebasoftis <zebasoftis@gmail.com>
Polish Resource File for desk.cpl

svn path=/trunk/; revision=16504
2005-07-08 08:50:46 +00:00
James Tabor
953b49324b Kill debug messages.
svn path=/trunk/; revision=16503
2005-07-08 02:06:33 +00:00
James Tabor
31c9627540 Add MIIM_BITMAP & MNS_CHECKORBMP support in menu. Based on Wine port.
svn path=/trunk/; revision=16502
2005-07-07 23:29:53 +00:00
Hervé Poussineau
74346861b0 Minimize differences between GCC and MSVC in header file
Don't define SR_MSR_DSR as it already exists under the name SERIAL_DSR_STATE
Remove $Id: tags

svn path=/trunk/; revision=16501
2005-07-07 23:10:35 +00:00
Magnus Olsen
daafc242e6 Set right %ERRORLEVEL% value, fixing end of line for /? after implement of page break.
svn path=/trunk/; revision=16500
2005-07-07 22:27:30 +00:00
Hervé Poussineau
f7289e9d4a Add missing registry entries for serial ports
svn path=/trunk/; revision=16499
2005-07-07 22:23:26 +00:00
Magnus Olsen
19b47127b0 Set right %ERRORLEVEL% value, fixing end of line for /? for most commands after implement of page break.
svn path=/trunk/; revision=16498
2005-07-07 20:41:13 +00:00
Hartmut Birr
93fc422f43 Fixed a bug which was introduced by r16441.
svn path=/trunk/; revision=16497
2005-07-07 19:54:25 +00:00
Magnus Olsen
2bd961bd1d set right value of %ERRORLEVEL% for vol
svn path=/trunk/; revision=16496
2005-07-07 19:51:09 +00:00
Magnus Olsen
bff830321b add %CMDEXTVERSION% example to use it echo %CMDEXTVERSION% the value are hardcode to 2. for it is that value ms win2k / winxp report back. thx arty to test it in win xp.
svn path=/trunk/; revision=16495
2005-07-07 19:26:46 +00:00
Magnus Olsen
610ec85471 adding %cmdcmdline%, example how to use it echo %CMDCMDLINE%
svn path=/trunk/; revision=16494
2005-07-07 19:16:46 +00:00
Martin Fuchs
497eba8519 Sync to Wine:
- switch to UNICODE compilaton in Wine
- remove separate unixcalls.c file
- don't crash in set_curdir() for NULL in the 'entry' pointer

svn path=/trunk/; revision=16493
2005-07-07 18:44:08 +00:00
Magnus Olsen
dfcc16249d Did forget instate in for loop the patternX, the right way. thx GvG to spot it and tell me how to fix.
svn path=/trunk/; revision=16492
2005-07-07 18:21:44 +00:00