Listing 7
int main()
{
HANDLE os_handle = open_os_handle("\\\\.\\pipe\\p1");
marshal::handle_buffer_t two_way_transport(os_handle);
marshal::raw_iostream encoder(two_way_transport);
// Configure with a debugging stream
proxy_t<marshal::caller, marshal::raw_ostream,
marshal::raw_istream, std::ostream> proxy;
proxy.bind(encoder, encoder, std::clog);
// Start marking remote function calls
int retval = proxy->strlen("hello");
std::vector<std::string> titles = proxy->get_titles("Koenig");
std::string home_page = proxy->get_website();
return EXIT_SUCCESS;
}