• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2006, 2007 Julio M. Merino Vidal
2 // Copyright (c) 2008 Ilya Sokolov, Boris Schaeling
3 // Copyright (c) 2009 Boris Schaeling
4 // Copyright (c) 2010 Felipe Tanus, Boris Schaeling
5 // Copyright (c) 2011, 2012 Jeff Flinn, Boris Schaeling
6 // Copyright (c) 2016 Klemens D. Morgenstern
7 //
8 // Distributed under the Boost Software License, Version 1.0. (See accompanying
9 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
10 
11 #ifndef BOOST_PROCESS_WINDOWS_SHOW_WINDOW_HPP
12 #define BOOST_PROCESS_WINDOWS_SHOW_WINDOW_HPP
13 
14 #include <boost/winapi/process.hpp>
15 #include <boost/winapi/show_window.hpp>
16 #include <boost/process/detail/handler_base.hpp>
17 
18 
19 namespace boost { namespace process { namespace detail { namespace windows {
20 
21 template<::boost::winapi::WORD_ Flags>
22 struct show_window : ::boost::process::detail::handler_base
23 {
24     template <class WindowsExecutor>
on_setupboost::process::detail::windows::show_window25     void on_setup(WindowsExecutor &e) const
26     {
27         e.startup_info.dwFlags |= ::boost::winapi::STARTF_USESHOWWINDOW_;
28         e.startup_info.wShowWindow |= Flags;
29     }
30 };
31 
32 struct create_no_window_ : public ::boost::process::detail::handler_base
33 {
34     template <class Executor>
on_setupboost::process::detail::windows::create_no_window_35     void on_setup(Executor &exec) const
36     {
37         exec.creation_flags |= ::boost::winapi::CREATE_NO_WINDOW_;
38     }
39 };
40 
41 
42 }}}}
43 
44 #endif
45 
46