aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-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 {