Move the functions NetGetDCName, NetGetAnyDCName and NetEnumerateTrustedDomains into a separate file for the Netlogon service interface code.
svn path=/trunk/; revision=75186
Implement I_BrowserQueryOtherDomains, I_BrowserQueryStatistics and I_BrowserResetNetlogonState. This functions calls their counterpart in the computer browser service.
svn path=/trunk/; revision=75184
Make nt object symlinks work more like shortcuts. Fixes the addressbar not quite knowing what to show when you click on a symlink.
svn path=/trunk/; revision=75177
* Added a common superclass for the ntobj and registry folders.
* Refactored the ntobj and registry folders to make use of this superclass.
* Removed the concept of a "pidl helper", since it works best to just have the methods be part of the folders.
* Cleaned up the ItemID comparison logic.
svn path=/trunk/; revision=75175
Import Wine commit:
- 8d461c1f42b0b667b2aa6a235d007eea1dd6f561, Don't stop enumeration on the first failing network provider.
This fixes 'net use' stoping connections enumeration when a network returns an error or no connection.
CORE-13475
svn path=/trunk/; revision=75173
Import Wine commit:
- 51b4a42969366cc409808aded23d3602a34206e2, Properly handle the count set to -1 when enumerating connections.
This fixes 'net use' not being able to enumerate multiple connections served by multiple network providers.
CORE-13475
svn path=/trunk/; revision=75172
- Normally getting the SrcNode and DestNode must succeed (checked with assert);
- Set the DestNode Flags member, in particular when this is the new root node of the saved registry hive;
- Copy the key class cell (OK), and the key security cell (currently done in a hackish way; proper way: call the CmpAssignSecurity* function);
- Add more clean-up on failure;
- Warn in code about the fact that CmpDeepCopyKeyInternal is recursive, and will easily exhaust kernel stack. This function will need to be reworked later...
CORE-10793 CORE-10796
svn path=/trunk/; revision=75171
Fixed registry value display for values that are too long to fit inside the shitemid.
Set the maximum for shitemid embedding back to a smaller number.
svn path=/trunk/; revision=75166
* Fixed NT object symbolic link target retrieval.
* Fixed NT path parsing (didn't consider paths sub sub-folders in them).
* Fixed BindToObject to properly resolve the target path for symlinks.
* Made the maximum embedded content length for registry keys a bit bigger.
svn path=/trunk/; revision=75160
Improve the GetDisplayNameOf logic from "badly broken" to "seems to work". I'm not convinced it's perfect, but it's better than before.
svn path=/trunk/; revision=75157
- Correctly use the page heap's lock in RtlLockHeap/RtlUnlockHeap when appropriate. Fixes assertion failure when Global/Local memory allocations are performed concurrently with DPH enabled.
svn path=/trunk/; revision=75152
- In MiDeletePte, check the ReferenceCount of transition PTEs, not the ShareCount (which is actually u2.Blink, since the page is in a modified/standby list). Also don't reset the PageLocation, since MiDecrementReferenceCount expects it to be anything but ActiveAndValid.
Fixes physical page leaks when using DPH, or other code that sets PAGE_NOACCESS.
CORE-13311 #resolve
svn path=/trunk/; revision=75150
- Fix a bug in CmpInitHiveFromFile(): correctly set the MaximumLength value of NewHive->FileFullPath;
- Code simplification: no need to use temporary ANSI string operations followed by UNICODE conversion, when one can do the same thing directly in UNICODE.
- Use NULL for NULL handles.
svn path=/trunk/; revision=75142
-Add a new template called CComQIIDPtr and its partner I_ID macro. Its purpose is to be a gcc compatible version of CComQIPtr.
-CComQIIDPtr<I_ID(Itype)> is the gcc compatible version of CComQIPtr<Itype>
- WARNING: this is not tested yet.
svn path=/trunk/; revision=75129
- Use NULL instead of 'zero' for setting a handle / pointer to NULL;
- Don't hardcode an array size; fix a comment;
- Use ExFreePoolWithTag();
- Whitespace fix.
svn path=/trunk/; revision=75128
-Rename constructors from Class_Creator to Class_CreateInstance. Prepend the ones that are exported from rshell with RSHELL_. The reasoning is that rshell will always use our code but whether or not internal classes will be used in shellmenu lib will be controlled by preprocessor definitions in shellmenu.h
[BROWSEUI]
-Rename more constructors to use the _CreateInstance suffix.
[RSHELL]
- The functions that let rshell export some objects have the RSHELL_ postfix but they are not exported as such.
[EXPLORER]
- Rename _CStartMenu_Constructor to _CStartMenu_CreateInstance.
svn path=/trunk/; revision=75127