aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2020-10-01 15:53:00 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2020-10-01 15:53:00 +0300
commite395c296c7b1eb4d07a5b63e5b3189c770d4f2d5 (patch)
treebff670374be8a783ee9370619f1d39fdc090cbce
parentpdb::error: include function name in error message (diff)
downloadwinapi-debug-e395c296c7b1eb4d07a5b63e5b3189c770d4f2d5.tar.gz
winapi-debug-e395c296c7b1eb4d07a5b63e5b3189c770d4f2d5.zip
Process: static get_executable_path
-rw-r--r--include/pdb/process.hpp1
-rw-r--r--src/process.cpp4
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 {