{\rtf1\ansi \deff4\deflang1033{\fonttbl{\f1\froman\fcharset2\fprq2 Symbol;}{\f4\froman\fcharset0\fprq2 Times New Roman;}{\f11\fmodern\fcharset0\fprq1 Courier New;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255; \red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0; \red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\widctlpar \f4\fs20 \snext0 Normal;}{\*\cs10 \additive Default Paragraph Font;}{\s15\widctlpar \b\f4\fs40 \sbasedon0\snext16 API Title;}{\s16\widctlpar \f4 \sbasedon0\snext16 API Description;}{\s17\widctlpar \f11\fs22 \sbasedon0\snext17 API Function;}{\s18\widctlpar \b\f4 \sbasedon0\snext16 API Section;}{\s19\li720\widctlpar \f4 \sbasedon0\snext16 API Parameter Description;}{\s20\widctlpar \i\f4 \sbasedon0\snext19 API Parameter Name;}{\s21\widctlpar \f4\fs20 \sbasedon0\snext21 footnote text;}{\*\cs22 \additive\super \sbasedon10 footnote reference;}}{\info{\title SNetCreateGame}{\author Mike O'Brien}{\operator Mike O'Brien} {\creatim\yr1996\mo8\dy21\hr16\min18}{\revtim\yr1996\mo10\dy3\hr19\min8}{\version5}{\edmins12}{\nofpages2}{\nofwords310}{\nofchars1770}{\*\company Blizzard Entertainment}{\vern57431}}\widowctrl\ftnbj\aenddoc\hyphcaps0\formshade \fet0\sectd \linex0\endnhere {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8 \pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \s15\keepn\widctlpar \b\f4\fs40 {\cs22\super ${\footnote \pard\plain \s21\widctlpar \f4\fs20 {\cs22\super $} SNet SelectProvider}#{\footnote \pard\plain \s21\widctlpar \f4\fs20 {\cs22\super #} SNetSelectProvider}K{\footnote \pard\plain \s21\widctlpar \f4\fs20 {\cs22\super K} SNetSelectProvider}} SNetSelectProvider \par \pard\plain \s16\widctlpar \f4 \par \pard \s16\widctlpar Supplies user interface screens to allow the user to select a network provider, then initializes that provider. \par \pard \s16\widctlpar \par \pard\plain \s17\widctlpar \f11\fs22 BOOL SNetSelectGame ( \par \pard \s17\widctlpar \tab SNETCAPSPTR\tab \tab mincaps, \par \tab SNETPROGRAMDATAPTR\tab programdata, \par \tab SNETPLAYERDATAPTR\tab playerdata, \par \tab SNETUIDATAPTR\tab \tab interfacedata, \par \tab SNETVERSIONDATAPTR\tab versiondata, \par \tab DWORD\tab \tab \tab \tab *providerid \par ); \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s18\widctlpar \b\f4 Parameters \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s20\widctlpar \i\f4 programdata \par \pard\plain \s19\li720\widctlpar \f4 A pointer to a structure containing information about the program, such as the program name, version, and number of players supported. This is a mandatory parameter. \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s20\widctlpar \i\f4 playerdata \par \pard\plain \s19\li720\widctlpar \f4 A pointer to a structure containing the name and description of the current player. The provider may use this information if it performs a matchmaking process. This is a mandatory parameter. \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s20\widctlpar \i\f4 interfacedata \par \pard\plain \s19\li720\widctlpar \f4 A pointer to a structure containing information about how the network provider should display user interface screens if necessary. Most network providers will fail if this information is not given. For example, the modem provider cannot query the user f or a phone number to dial without the ability to display user interface screens. \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s20\widctlpar \i\f4 versiondata \par \pard\plain \s19\li720\widctlpar \f4 A pointer to a structure containing information about the application which is necessary for automatic version control. Some network providers are capable of performing over-the-wire version updates. \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s20\widctlpar \i\f4 providerid \par \pard\plain \s19\li720\widctlpar \f4 The ID of the provider that was selected. \par \pard\plain \s16\widctlpar \f4 \par \pard\plain \s18\widctlpar \b\f4 Return Value \par \pard\plain \s16\widctlpar \f4 \par This function returns TRUE for success or FALSE for failure. The function can fail if: \par {\pntext\pard\plain\f1 \'b7\tab}\pard \s16\fi-360\li360\widctlpar{\*\pn \pnlvlblt\pnf1\pnstart1\pnindent360\pnhang{\pntxtb \'b7}}The program data is missing or invalid. \par {\pntext\pard\plain\f1 \'b7\tab}The player data is missing or invalid. \par {\pntext\pard\plain\f1 \'b7\tab}The interface data is missing or invalid, and the provider needs to display interface during the initialization process. \par {\pntext\pard\plain\f1 \'b7\tab}The network provider was unable to initialize itself. For example, the IPX provider may fail if IPX support is not available, and the Battle.net provider may fail if it cannot contact any Battle.net servers. \par {\pntext\pard\plain\f1 \'b7\tab}The application needs to be upgraded before it can connect to the server. \par \pard \s16\widctlpar \par If this function fails, the application should call GetLastError() to determine the reason for failure. If GetLastError() returns SNET_ERROR_REQUIRES_UPGRADE, the application should call SNetPerformUpgrade(). \par }