1 // Licensed under the Apache License, Version 2.0 2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license 3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option. 4 // All files in the project carrying such notice may not be copied, modified, or distributed 5 // except according to those terms. 6 use shared::minwindef::{BOOL, DWORD}; 7 use um::winnt::{HANDLE, LPCH, LPCSTR, LPCWSTR, LPSTR, LPWCH, LPWSTR, PHANDLE}; 8 extern "system" { GetEnvironmentStrings() -> LPCH9 pub fn GetEnvironmentStrings() -> LPCH; GetEnvironmentStringsW() -> LPWCH10 pub fn GetEnvironmentStringsW() -> LPWCH; SetEnvironmentStringsW( NewEnvironment: LPWCH, ) -> BOOL11 pub fn SetEnvironmentStringsW( 12 NewEnvironment: LPWCH, 13 ) -> BOOL; FreeEnvironmentStringsA( penv: LPCH, ) -> BOOL14 pub fn FreeEnvironmentStringsA( 15 penv: LPCH, 16 ) -> BOOL; FreeEnvironmentStringsW( penv: LPWCH, ) -> BOOL17 pub fn FreeEnvironmentStringsW( 18 penv: LPWCH, 19 ) -> BOOL; GetStdHandle( nStdHandle: DWORD, ) -> HANDLE20 pub fn GetStdHandle( 21 nStdHandle: DWORD, 22 ) -> HANDLE; SetStdHandle( nStdHandle: DWORD, hHandle: HANDLE, ) -> BOOL23 pub fn SetStdHandle( 24 nStdHandle: DWORD, 25 hHandle: HANDLE, 26 ) -> BOOL; SetStdHandleEx( nStdHandle: DWORD, hHandle: HANDLE, phPrevValue: PHANDLE, ) -> BOOL27 pub fn SetStdHandleEx( 28 nStdHandle: DWORD, 29 hHandle: HANDLE, 30 phPrevValue: PHANDLE, 31 ) -> BOOL; GetCommandLineA() -> LPSTR32 pub fn GetCommandLineA() -> LPSTR; GetCommandLineW() -> LPWSTR33 pub fn GetCommandLineW() -> LPWSTR; GetEnvironmentVariableA( lpName: LPCSTR, lpBuffer: LPSTR, nSize: DWORD, ) -> DWORD34 pub fn GetEnvironmentVariableA( 35 lpName: LPCSTR, 36 lpBuffer: LPSTR, 37 nSize: DWORD, 38 ) -> DWORD; GetEnvironmentVariableW( lpName: LPCWSTR, lpBuffer: LPWSTR, nSize: DWORD, ) -> DWORD39 pub fn GetEnvironmentVariableW( 40 lpName: LPCWSTR, 41 lpBuffer: LPWSTR, 42 nSize: DWORD, 43 ) -> DWORD; SetEnvironmentVariableA( lpName: LPCSTR, lpValue: LPCSTR, ) -> BOOL44 pub fn SetEnvironmentVariableA( 45 lpName: LPCSTR, 46 lpValue: LPCSTR, 47 ) -> BOOL; SetEnvironmentVariableW( lpName: LPCWSTR, lpValue: LPCWSTR, ) -> BOOL48 pub fn SetEnvironmentVariableW( 49 lpName: LPCWSTR, 50 lpValue: LPCWSTR, 51 ) -> BOOL; ExpandEnvironmentStringsA( lpSrc: LPCSTR, lpDst: LPSTR, nSize: DWORD, ) -> DWORD52 pub fn ExpandEnvironmentStringsA( 53 lpSrc: LPCSTR, 54 lpDst: LPSTR, 55 nSize: DWORD, 56 ) -> DWORD; ExpandEnvironmentStringsW( lpSrc: LPCWSTR, lpDst: LPWSTR, nSize: DWORD, ) -> DWORD57 pub fn ExpandEnvironmentStringsW( 58 lpSrc: LPCWSTR, 59 lpDst: LPWSTR, 60 nSize: DWORD, 61 ) -> DWORD; SetCurrentDirectoryA( lpPathName: LPCSTR, ) -> BOOL62 pub fn SetCurrentDirectoryA( 63 lpPathName: LPCSTR, 64 ) -> BOOL; SetCurrentDirectoryW( lpPathName: LPCWSTR, ) -> BOOL65 pub fn SetCurrentDirectoryW( 66 lpPathName: LPCWSTR, 67 ) -> BOOL; GetCurrentDirectoryA( nBufferLength: DWORD, lpBuffer: LPSTR, ) -> DWORD68 pub fn GetCurrentDirectoryA( 69 nBufferLength: DWORD, 70 lpBuffer: LPSTR, 71 ) -> DWORD; GetCurrentDirectoryW( nBufferLength: DWORD, lpBuffer: LPWSTR, ) -> DWORD72 pub fn GetCurrentDirectoryW( 73 nBufferLength: DWORD, 74 lpBuffer: LPWSTR, 75 ) -> DWORD; SearchPathW( lpPath: LPCWSTR, lpFileName: LPCWSTR, lpExtension: LPCWSTR, nBufferLength: DWORD, lpBuffer: LPWSTR, lpFilePart: *mut LPWSTR, ) -> DWORD76 pub fn SearchPathW( 77 lpPath: LPCWSTR, 78 lpFileName: LPCWSTR, 79 lpExtension: LPCWSTR, 80 nBufferLength: DWORD, 81 lpBuffer: LPWSTR, 82 lpFilePart: *mut LPWSTR, 83 ) -> DWORD; SearchPathA( lpPath: LPCSTR, lpFileName: LPCSTR, lpExtension: LPCSTR, nBufferLength: DWORD, lpBuffer: LPSTR, lpFilePart: *mut LPSTR, ) -> DWORD84 pub fn SearchPathA( 85 lpPath: LPCSTR, 86 lpFileName: LPCSTR, 87 lpExtension: LPCSTR, 88 nBufferLength: DWORD, 89 lpBuffer: LPSTR, 90 lpFilePart: *mut LPSTR, 91 ) -> DWORD; NeedCurrentDirectoryForExePathA( ExeName: LPCSTR, ) -> BOOL92 pub fn NeedCurrentDirectoryForExePathA( 93 ExeName: LPCSTR, 94 ) -> BOOL; NeedCurrentDirectoryForExePathW( ExeName: LPCWSTR, ) -> BOOL95 pub fn NeedCurrentDirectoryForExePathW( 96 ExeName: LPCWSTR, 97 ) -> BOOL; 98 } 99