Woohoo, thanks!
Questions/comments inline.
On 2014-05-12 01:11, tkreuzer(a)svn.reactos.org wrote:
  --- trunk/reactos/include/ddk/ntifs.h   [iso-8859-1]
(original)
 +++ trunk/reactos/include/ddk/ntifs.h  [iso-8859-1] Sun May 11 23:11:16 2014
 @@ -870,11 +870,11 @@
  (NTAPI *PRTL_FREE_STRING_ROUTINE)(
    _In_ __drv_freesMem(Mem) _Post_invalid_ PVOID Buffer);
 -extern const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine;
 -extern const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine;
 +extern NTKERNELAPI const PRTL_ALLOCATE_STRING_ROUTINE RtlAllocateStringRoutine;
 +extern NTKERNELAPI const PRTL_FREE_STRING_ROUTINE RtlFreeStringRoutine;
  #if _WIN32_WINNT >= 0x0600
 -extern const PRTL_REALLOCATE_STRING_ROUTINE RtlReallocateStringRoutine;
 +extern NTKERNELAPI const PRTL_REALLOCATE_STRING_ROUTINE RtlReallocateStringRoutine;
  #endif
  _Function_class_(RTL_HEAP_COMMIT_ROUTINE) 
Do you have any idea what RtlAllocateStringRoutine and friends are?
They don't seem to exist. (NDK defines them for user mode btw, without
dllimport)
  Modified: trunk/reactos/include/ddk/wdm.h
 URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/wdm.h?rev=6324…
 ==============================================================================
 --- trunk/reactos/include/ddk/wdm.h    [iso-8859-1] (original)
 +++ trunk/reactos/include/ddk/wdm.h    [iso-8859-1] Sun May 11 23:11:16 2014
 @@ -82,10 +85,13 @@
  #endif
  /* For ReactOS */
 -#if !defined(_NTOSKRNL_) && !defined(_BLDR_)
 +#if !defined(_NTOSKRNL_) && !defined(_BLDR_) && !defined(_NTSYSTEM_)
  #define NTKERNELAPI DECLSPEC_IMPORT
  #else
  #define NTKERNELAPI
 +#ifndef _NTSYSTEM_
 +#define _NTSYSTEM_
 +#endif
  #endif
  #if defined(_X86_) && !defined(_NTHAL_) 
We should probably switch to using _NTSYSTEM_ instead of _NTOSKRNL_ at
some point?
  @@ -129,6 +135,29 @@
  #define ALLOC_DATA_PRAGMA 1
  #endif
 +#endif /* _MSC_VER */
 +
 +/* These macros are used to create aliases for imported data. We need to do
 +   this to have declarations that are compatible with MS DDK */
 +#ifdef _M_IX86
 +#define __SYMBOL(_Name) "_"#_Name
 +#define __IMPORTSYMBOL(_Name) "__imp__"#_Name
 +#define __IMPORTNAME(_Name) _imp__##_Name
 +#else
 +#define __SYMBOL(_Name) #_Name
 +#define __IMPORTSYMBOL(_Name) "__imp_"#_Name
 +#define __IMPORTNAME(_Name) __imp_##_Name
 +#endif
 +#ifdef _MSC_VER
 +#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name) \
 +    __pragma(comment(linker, "/alternatename:"__SYMBOL(_Name) "="
__IMPORTSYMBOL(_Name)))
 +#else /* !_MSC_VER */
 +#ifndef __STRINGIFY
 +#define __STRINGIFY(_exp) #_exp
 +#endif
 +#define _Pragma_redifine_extname(_Name, _Target) _Pragma(__STRINGIFY(redefine_extname
_Name _Target))
 +#define __CREATE_NTOS_DATA_IMPORT_ALIAS(_Name) \
 +    _Pragma_redifine_extname(_Name,__IMPORTNAME(_Name))
  #endif
  #if defined(_WIN64) 
s/redifine/redefine/
  --- trunk/reactos/ntoskrnl/kd64/kdapi.c [iso-8859-1]
(original)
 +++ trunk/reactos/ntoskrnl/kd64/kdapi.c        [iso-8859-1] Sun May 11 
23:11:16
2014
  @@ -1903,9 +1903,7 @@
              /* We are disabled now */
              KdDebuggerEnabled = FALSE;
 -#undef KdDebuggerEnabled
              SharedUserData->KdDebuggerEnabled = FALSE;
 -#define KdDebuggerEnabled _KdDebuggerEnabled
          }
       } 
Should this not use KD_DEBUGGER_ENABLED?
(same in kdinit.c)