From fc08355620d67b1eba645d016964eb2558e874d1 Mon Sep 17 00:00:00 2001 From: NextTurn <45985406+NextTurn@users.noreply.github.com> Date: Sun, 2 Dec 2018 00:00:00 +0800 Subject: [PATCH] Specify Unicode versions --- src/Core/WinSWCore/Native/Advapi32.cs | 12 ++++++------ src/Core/WinSWCore/Native/Kernel32.cs | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Core/WinSWCore/Native/Advapi32.cs b/src/Core/WinSWCore/Native/Advapi32.cs index 4289edd..e83ae6d 100755 --- a/src/Core/WinSWCore/Native/Advapi32.cs +++ b/src/Core/WinSWCore/Native/Advapi32.cs @@ -275,19 +275,19 @@ namespace winsw.Native { private const string Advapi32LibraryName = "advapi32.dll"; - [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "ChangeServiceConfig2W")] internal static extern bool ChangeServiceConfig2(IntPtr hService, SERVICE_CONFIG_INFOLEVEL dwInfoLevel, IntPtr lpInfo); - [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "ChangeServiceConfig2W")] internal static extern bool ChangeServiceConfig2(IntPtr hService, SERVICE_CONFIG_INFOLEVEL dwInfoLevel, ref SERVICE_FAILURE_ACTIONS sfa); - [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "ChangeServiceConfig2W")] internal static extern bool ChangeServiceConfig2(IntPtr hService, SERVICE_CONFIG_INFOLEVEL dwInfoLevel, ref SERVICE_DELAYED_AUTO_START sfa); - [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "OpenSCManagerW")] internal static extern IntPtr OpenSCManager(string? machineName, string? databaseName, uint dwAccess); - [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "OpenServiceW")] internal static extern IntPtr OpenService(IntPtr hSCManager, string lpServiceName, uint dwDesiredAccess); [DllImport(Advapi32LibraryName, SetLastError = true)] @@ -306,7 +306,7 @@ namespace winsw.Native [DllImport(Advapi32LibraryName)] internal static extern void FreeSid(IntPtr pSid); - [DllImport(Advapi32LibraryName, CharSet = CharSet.Auto, SetLastError = true)] + [DllImport(Advapi32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "LookupAccountNameW")] internal static extern bool LookupAccountName(string lpSystemName, string lpAccountName, IntPtr psid, ref int cbsid, StringBuilder domainName, ref int cbdomainLength, ref int use); diff --git a/src/Core/WinSWCore/Native/Kernel32.cs b/src/Core/WinSWCore/Native/Kernel32.cs index bf323db..73d29b9 100755 --- a/src/Core/WinSWCore/Native/Kernel32.cs +++ b/src/Core/WinSWCore/Native/Kernel32.cs @@ -14,7 +14,7 @@ namespace winsw.Native [DllImport(Kernel32LibraryName, SetLastError = true)] public static extern bool SetStdHandle(int nStdHandle, SafeFileHandle handle); - [DllImport(Kernel32LibraryName, SetLastError = true)] + [DllImport(Kernel32LibraryName, SetLastError = true, CharSet = CharSet.Unicode, EntryPoint = "CreateProcessW")] public static extern bool CreateProcess( string? lpApplicationName, string lpCommandLine,