선언:
C#
[DllImport("kernel32", CharSet = CharSet.Auto)]
public static extern Int32 GetWindowsDirectory(String Buffer, Int32 BufferLength);
VB.NET
<DllImport("kernel32", CharSet := CharSet.Auto)> _
Public Shared Function GetWindowsDirectory(Buffer As String, BufferLength As Int32) As Int32
End Function
사용 예제:
C#
using System;
using System.Runtime.InteropServices;
namespace ApiReference {
class ApiExample {
[DllImport("kernel32", CharSet = CharSet.Auto)]
public static extern Int32 GetWindowsDirectory(String Buffer, Int32 BufferLength);
public static void Main(string[] args) {
String winDir = new string(' ', 260);
GetWindowsDirectory(winDir, 260);
winDir = winDir.Trim();
Console.WriteLine("Windows Directory:");
Console.WriteLine(" {0}", winDir);
Console.ReadKey(true);
}
}
}
VB.NET
Imports System
Imports System.Runtime.InteropServices
Namespace ApiReference
Class ApiExample
<DllImport("kernel32", CharSet := CharSet.Auto)> _
Public Shared Function GetWindowsDirectory(Buffer As String, BufferLength As Int32) As Int32
End Function
Public Shared Sub Main(args As String())
Dim winDir As String = New String(" "C, 260)
GetWindowsDirectory(winDir, 260)
winDir = winDir.Trim()
Console.WriteLine("Windows Directory:")
Console.WriteLine(" {0}", winDir)
Console.ReadKey(True)
End Sub
End Class
End Namespace
예제 실행 결과:
매개 변수 설명:
Buffer - 시스템 폴더의 경로가 저장될 변수를 입력합니다.
BufferLength - 시스템 폴더의 경로가 저장될 버퍼 변수의 길이를 입력합니다.
API 설명:
윈도우즈 폴더(평균적으로 C:\Windows)의 경로를 가져옵니다.
참고:
GetWindowsDirectory (MSDN)
비고:
GetSystemDirectory API와 마찬가지로, API 호출 성공 시 버퍼에 복사된 크기를 반환합니다.
'API Reference' 카테고리의 다른 글
36. SHGetFolderPath (0) | 2014.10.29 |
---|---|
35. GetComputerName (0) | 2014.10.24 |
33. GetSystemDirectory (0) | 2014.10.23 |
32. SendMessage (1) | 2014.10.11 |
31. SetWindowLong (0) | 2014.10.11 |