diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2017-04-27 22:35:21 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2017-04-27 22:35:21 +0300 |
commit | 7be3d976a223220e8e48896a401ac7e56e40ce62 (patch) | |
tree | 4d39e948d5ccd65c27d6ce76120bbcbe33484061 /um/libnt_path_converter | |
parent | move WDK-version-specific stuff out of root README (diff) | |
download | windows7-drivers-7be3d976a223220e8e48896a401ac7e56e40ce62.tar.gz windows7-drivers-7be3d976a223220e8e48896a401ac7e56e40ce62.zip |
um: reorganize projects
* libservice -> service
* libsimple -> wrappers/simple
* libnt_path_converter -> wrappers/special/nt_path_converter
Diffstat (limited to 'um/libnt_path_converter')
-rw-r--r-- | um/libnt_path_converter/CMakeLists.txt | 10 | ||||
-rw-r--r-- | um/libnt_path_converter/README.md | 31 | ||||
-rw-r--r-- | um/libnt_path_converter/include/libnt_path_converter/all.hpp | 8 | ||||
-rw-r--r-- | um/libnt_path_converter/include/libnt_path_converter/device.hpp | 21 | ||||
-rw-r--r-- | um/libnt_path_converter/src/device.cpp | 48 | ||||
-rw-r--r-- | um/libnt_path_converter/utils/CMakeLists.txt | 2 | ||||
-rw-r--r-- | um/libnt_path_converter/utils/convert_nt_path.cpp | 26 |
7 files changed, 0 insertions, 146 deletions
diff --git a/um/libnt_path_converter/CMakeLists.txt b/um/libnt_path_converter/CMakeLists.txt deleted file mode 100644 index 69f85d0..0000000 --- a/um/libnt_path_converter/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -project(libnt_path_converter) -file(GLOB libnt_path_converter_sources "src/*.cpp") -file(GLOB_RECURSE libnt_path_converter_headers "include/*.hpp") -add_library(libnt_path_converter - ${libnt_path_converter_sources} - ${libnt_path_converter_headers}) -target_link_libraries(libnt_path_converter libservice) -target_include_directories(libnt_path_converter PUBLIC include/) - -add_subdirectory(utils) diff --git a/um/libnt_path_converter/README.md b/um/libnt_path_converter/README.md deleted file mode 100644 index 74653dc..0000000 --- a/um/libnt_path_converter/README.md +++ /dev/null @@ -1,31 +0,0 @@ -nt_path_converter driver utilities -================================== - -[nt_path_converter] driver usage examples. - -[nt_path_converter]: ../../km/src/special/nt_path_converter - -Usage ------ - -### convert_nt_path.exe - - Usage: convert_nt_path.exe [NT_PATH...] - -Converts a NT-style path to a DOS-style path. -The NT namespace can be explored using the [WinObj] utility. -For example: - - > convert_nt_path.exe \Device\HarddiskVolume2\Windows - C:\Windows - -[WinObj]: https://technet.microsoft.com/en-us/library/bb896657.aspx - -See also --------- - -* [Building the utilities] -* [License] - -[Building the utilities]: ../README.md#building-the-utilities -[License]: ../../README.md#license diff --git a/um/libnt_path_converter/include/libnt_path_converter/all.hpp b/um/libnt_path_converter/include/libnt_path_converter/all.hpp deleted file mode 100644 index 474b802..0000000 --- a/um/libnt_path_converter/include/libnt_path_converter/all.hpp +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) 2015 Egor Tensin <Egor.Tensin@gmail.com> -// This file is part of the "Windows 7 drivers" project. -// For details, see https://github.com/egor-tensin/windows7-drivers. -// Distributed under the MIT License. - -#pragma once - -#include "device.hpp" diff --git a/um/libnt_path_converter/include/libnt_path_converter/device.hpp b/um/libnt_path_converter/include/libnt_path_converter/device.hpp deleted file mode 100644 index e1d75fb..0000000 --- a/um/libnt_path_converter/include/libnt_path_converter/device.hpp +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (c) 2015 Egor Tensin <Egor.Tensin@gmail.com> -// This file is part of the "Windows 7 drivers" project. -// For details, see https://github.com/egor-tensin/windows7-drivers. -// Distributed under the MIT License. - -#pragma once - -#include "libservice/all.hpp" - -#include <string> - -namespace libnt_path_converter -{ - class Device : libservice::Device - { - public: - Device(); - - std::wstring convert_nt_path(const std::wstring&); - }; -} diff --git a/um/libnt_path_converter/src/device.cpp b/um/libnt_path_converter/src/device.cpp deleted file mode 100644 index 90cd12f..0000000 --- a/um/libnt_path_converter/src/device.cpp +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) 2015 Egor Tensin <Egor.Tensin@gmail.com> -// This file is part of the "Windows 7 drivers" project. -// For details, see https://github.com/egor-tensin/windows7-drivers. -// Distributed under the MIT License. - -#include "libnt_path_converter/device.hpp" - -#include "libservice/all.hpp" - -#include <Windows.h> - -#include <string> -#include <vector> - -namespace libnt_path_converter -{ - namespace - { - const char* const device_path = "\\\\.\\nt_path_converter"; - const auto control_code = CTL_CODE(0x8000, 0x800, METHOD_BUFFERED, FILE_ANY_ACCESS); - } - - Device::Device() - : libservice::Device(libservice::Device::open(device_path)) - { } - - std::wstring Device::convert_nt_path(const std::wstring& src) - { - const auto in_buf = src.c_str(); - const auto in_buf_size = (src.size() + 1) * sizeof(wchar_t); - - const auto nbreq = get_required_output_size( - control_code, - in_buf, - in_buf_size); - - std::vector<unsigned char> output(nbreq); - - send_control_code( - control_code, - in_buf, - in_buf_size, - output.data(), - nbreq); - - return reinterpret_cast<wchar_t*>(output.data()); - } -} diff --git a/um/libnt_path_converter/utils/CMakeLists.txt b/um/libnt_path_converter/utils/CMakeLists.txt deleted file mode 100644 index 9915995..0000000 --- a/um/libnt_path_converter/utils/CMakeLists.txt +++ /dev/null @@ -1,2 +0,0 @@ -add_executable(convert_nt_path convert_nt_path.cpp) -target_link_libraries(convert_nt_path libnt_path_converter) diff --git a/um/libnt_path_converter/utils/convert_nt_path.cpp b/um/libnt_path_converter/utils/convert_nt_path.cpp deleted file mode 100644 index 0055db2..0000000 --- a/um/libnt_path_converter/utils/convert_nt_path.cpp +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) 2015 Egor Tensin <Egor.Tensin@gmail.com> -// This file is part of the "Windows 7 drivers" project. -// For details, see https://github.com/egor-tensin/windows7-drivers. -// Distributed under the MIT License. - -#include "libnt_path_converter/all.hpp" - -#include <exception> -#include <iostream> - -int wmain(int argc, wchar_t* argv[]) -{ - try - { - libnt_path_converter::Device dev; - for (int i = 1; i < argc; ++i) - std::wcout << dev.convert_nt_path(argv[i]) << L"\n"; - } - catch (const std::exception& e) - { - std::wcerr << e.what() << "\n"; - return 1; - } - - return 0; -} |