@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: The GetCurrentDirectory API !!!!C# Signature: [DllImport("kernel32.dll")] static extern uint GetCurrentDirectory(uint nBufferLength, [Out] StringBuilder lpBuffer); !!!!User-Defined Types: None. !!!!Notes: None. !!!!Tips & Tricks: Please add some! !!!!Sample Code: /*************************************************** * * * I M P O R T A N T N O T E * * * * This sample uses: GetCurrentDirectoryW * * * ***************************************************/ //Declaration public const uint MAX_DEEP_PATH = 32767; [DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)] static extern uint GetCurrentDirectoryW(uint nBufferLength, StringBuilder lpBuffer); //Usage StringBuilder nameBuffer = new StringBuilder((int)MAX_DEEP_PATH + 3); //I need 3 extra '\x0' chartacters at the end of the buffer //You need to be able to hold up to 32767 chars if you plan to recurse deep folder structures //when you use FindFirstFileW, FindNextFileW and DeleteFileW uint folderNameLength = GetCurrentDirectory(MAX_DEEP_PATH, nameBuffer); if (folderNameLength == 0) { int lastError = Marshal.GetLastWin32Error(); Console.WriteLine("Failed to get initial working directory; error = '{0}'", lastError); return; } if (folderNameLength > MAX_DEEP_PATH) { Console.WriteLine("Failed to get initial working directory; allocated buffer is shorter than required: '{0}'<'{1}'", MAX_DEEP_PATH, folderNameLength); return; } !!!!Alternative Managed API: Directory.GetCurrentDirectory Documentation: GetCurrentDirectory@msdn on MSDN
Edit kernel32.GetCurre...
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.