diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2020-10-01 15:53:00 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2020-10-01 15:53:00 +0300 |
commit | e395c296c7b1eb4d07a5b63e5b3189c770d4f2d5 (patch) | |
tree | bff670374be8a783ee9370619f1d39fdc090cbce | |
parent | pdb::error: include function name in error message (diff) | |
download | winapi-debug-e395c296c7b1eb4d07a5b63e5b3189c770d4f2d5.tar.gz winapi-debug-e395c296c7b1eb4d07a5b63e5b3189c770d4f2d5.zip |
Process: static get_executable_path
Diffstat (limited to '')
-rw-r--r-- | include/pdb/process.hpp | 1 | ||||
-rw-r--r-- | src/process.cpp | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/pdb/process.hpp b/include/pdb/process.hpp index e73ffff..023a741 100644 --- a/include/pdb/process.hpp +++ b/include/pdb/process.hpp @@ -25,6 +25,7 @@ public: const Handle& get_handle() const { return handle; } std::string get_executable_path() const; + static std::string get_executable_path(const Handle&); private: explicit Process(Handle&&); diff --git a/src/process.cpp b/src/process.cpp index 281ee86..683312c 100644 --- a/src/process.cpp +++ b/src/process.cpp @@ -114,6 +114,10 @@ Process::Process(Handle&& handle) : Process{::GetProcessId(handle.get()), std::m Process::Process(ID id, Handle&& handle) : id{id}, handle{std::move(handle)} {} std::string Process::get_executable_path() const { + return get_executable_path(handle); +} + +std::string Process::get_executable_path(const Handle& handle) { if (handle.get() == ::GetCurrentProcess()) { return pdb::get_current_executable_path(); } else { |