static void Main( string[] args ) { if ( args.Length < 2 ) { Console.WriteLine( "Sample3: No username and password specified!" ); return; } // save our logon details user = args[ 0 ]; pass = args[ 1 ]; // create our steamclient instance steamClient = new SteamClient(); // add our custom handler to our steamclient steamClient.AddHandler( new MyHandler() ); // create the callback manager which will route callbacks to function calls manager = new CallbackManager( steamClient ); // get the steamuser handler, which is used for logging on after successfully connecting steamUser = steamClient.GetHandler<SteamUser>(); // now get an instance of our custom handler myHandler = steamClient.GetHandler<MyHandler>(); // register a few callbacks we're interested in // these are registered upon creation to a callback manager, which will then route the callbacks // to the functions specified new Callback<SteamClient.ConnectedCallback>( OnConnected, manager ); new Callback<SteamClient.DisconnectedCallback>( OnDisconnected, manager ); new Callback<SteamUser.LoggedOnCallback>( OnLoggedOn, manager ); new Callback<SteamUser.LoggedOffCallback>( OnLoggedOff, manager ); // handle our own custom callback new Callback<MyHandler.MyCallback>( OnMyCallback, manager ); isRunning = true; Console.WriteLine( "Connecting to Steam..." ); // initiate the connection steamClient.Connect(); // create our callback handling loop while ( isRunning ) { // in order for the callbacks to get routed, they need to be handled by the manager manager.RunWaitCallbacks( TimeSpan.FromSeconds( 1 ) ); } }
static void Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Sample3: No username and password specified!"); return; } // save our logon details user = args[0]; pass = args[1]; // create our steamclient instance steamClient = new SteamClient(); // add our custom handler to our steamclient steamClient.AddHandler(new MyHandler()); // create the callback manager which will route callbacks to function calls manager = new CallbackManager(steamClient); // get the steamuser handler, which is used for logging on after successfully connecting steamUser = steamClient.GetHandler <SteamUser>(); // now get an instance of our custom handler myHandler = steamClient.GetHandler <MyHandler>(); // register a few callbacks we're interested in // these are registered upon creation to a callback manager, which will then route the callbacks // to the functions specified new Callback <SteamClient.ConnectedCallback>(OnConnected, manager); new Callback <SteamClient.DisconnectedCallback>(OnDisconnected, manager); new Callback <SteamUser.LoggedOnCallback>(OnLoggedOn, manager); new Callback <SteamUser.LoggedOffCallback>(OnLoggedOff, manager); // handle our own custom callback new Callback <MyHandler.MyCallback>(OnMyCallback, manager); isRunning = true; Console.WriteLine("Connecting to Steam..."); // initiate the connection steamClient.Connect(); // create our callback handling loop while (isRunning) { // in order for the callbacks to get routed, they need to be handled by the manager manager.RunWaitCallbacks(TimeSpan.FromSeconds(1)); } }
static void OnMyCallback( MyHandler.MyCallback callback ) { // this will be called when our custom callback gets posted Console.WriteLine( "OnMyCallback: {0}", callback.Result ); }