xtd 0.2.0
Loading...
Searching...
No Matches
process_start_info.h
Go to the documentation of this file.
1
4#pragma once
5#include <map>
6#include <memory>
7#include <string>
8#include <vector>
9#include "../core_export.h"
10#include "../object.h"
11#include "../security/secure_string.h"
13
15namespace xtd {
17 namespace diagnostics {
38 public:
40
45 process_start_info() = default;
46
51 explicit process_start_info(const xtd::ustring& file_name);
52
58 process_start_info(const xtd::ustring& file_name, const xtd::ustring& arguments);
59
62 process_start_info& operator =(const process_start_info&) = default;
65
67
71 const xtd::ustring& arguments() const noexcept;
75 process_start_info& arguments(const xtd::ustring& value) noexcept;
76
80 bool create_no_window() const noexcept;
85 process_start_info& create_no_window(bool value) noexcept;
86
89 const xtd::ustring& domain() const noexcept;
93 process_start_info& domain(const xtd::ustring& value) noexcept;
94
99 const std::map<xtd::ustring, xtd::ustring>& environment() const noexcept;
104 std::map<xtd::ustring, xtd::ustring>& environment() noexcept;
105
109 const std::map<xtd::ustring, xtd::ustring>& environment_variables() const noexcept;
113 std::map<xtd::ustring, xtd::ustring>& environment_variables() noexcept;
114
118 bool error_dialog() const noexcept;
123 process_start_info& error_dialog(bool value) noexcept;
124
128 intptr error_dialog_parent_handle() const noexcept;
133 process_start_info& error_dialog_parent_handle(intptr value) noexcept;
134
139 const xtd::ustring& file_name() const noexcept;
145 process_start_info& file_name(const xtd::ustring& value) noexcept;
147 process_start_info& file_name(const char* value) noexcept;
149
154 bool load_user_profile() const noexcept;
160 process_start_info& load_user_profile(bool value) noexcept;
161
169 const xtd::security::secure_string& password() const noexcept;
178 process_start_info& password(const xtd::security::secure_string& value) noexcept;
179
182 xtd::ustring password_in_clear_text() const noexcept;
186 process_start_info& password_in_clear_text(const xtd::ustring& value) noexcept;
187
295 bool redirect_standard_error() const noexcept;
404 process_start_info& redirect_standard_error(bool value) noexcept;
405
468 bool redirect_standard_input() const noexcept;
532 process_start_info& redirect_standard_input(bool value) noexcept;
533
656 bool redirect_standard_output() const noexcept;
780 process_start_info& redirect_standard_output(bool value) noexcept;
781
787 const xtd::ustring& user_name() const noexcept;
794 process_start_info& user_name(const xtd::ustring& value) noexcept;
795
804 bool use_shell_execute() const noexcept;
814 process_start_info& use_shell_execute(bool value) noexcept;
815
820 xtd::ustring verb() const noexcept;
826 process_start_info& verb(const xtd::ustring& value) noexcept;
827
832 std::vector<xtd::ustring> verbs() const;
833
837 xtd::diagnostics::process_window_style window_style() const noexcept;
842 process_start_info& window_style(xtd::diagnostics::process_window_style value) noexcept;
843
852 const xtd::ustring& working_directory() const noexcept;
862 process_start_info& working_directory(const xtd::ustring& value) noexcept;
864
865 private:
866 xtd::ustring file_name_;
867 xtd::ustring arguments_;
868 bool create_no_window_ = false;
869 xtd::ustring domain_;
870 bool error_dialog_ = false;
871 intptr error_dialog_parent_handle_ = 0;
872 std::map<xtd::ustring, xtd::ustring> environment_variables_;
873 bool load_user_profile_ = false;
874 xtd::security::secure_string password_;
875 bool redirect_standard_error_ = false;
876 bool redirect_standard_input_ = false;
877 bool redirect_standard_output_ = false;
878 xtd::ustring user_name_;
879 bool use_shell_execute_ = true;
880 xtd::ustring verb_;
881 xtd::diagnostics::process_window_style window_style_ = xtd::diagnostics::process_window_style::normal;
882 xtd::ustring working_directory_;
883 };
884 }
885}
Specifies a set of values that are used when you start a process.
Definition process_start_info.h:37
process_start_info(const xtd::ustring &file_name, const xtd::ustring &arguments)
Initializes a new instance of the xtd::diagnostics::process_start_info class, specifies an applicatio...
const xtd::ustring & arguments() const noexcept
Gets the set of command-line arguments to use when starting the application.
process_start_info(const xtd::ustring &file_name)
Initializes a new instance of the xtd::diagnostics::process_start_info class and specifies a file nam...
process_start_info()=default
Initializes a new instance of the xtd::diagnostics::process_start_info class without specifying a fil...
The environment class.
Definition environment.h:117
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.h:32
Represents text as a sequence of UTF-8 code units.
Definition ustring.h:47
#define core_export_
Define shared library export.
Definition core_export.h:13
intmax_t intptr
Represent a pointer or a handle.
Definition types.h:153
process_window_style
Specified how a new window should appear when the system starts a process.
Definition process_window_style.h:22
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.h:10
Contains xtd::diagnostics::process_window_style enum class.