Platform SDK: DirectX

DPAPPLICATIONDESC2

The DPAPPLICATIONDESC2 structure describes all the information necessary to register a lobby-aware application using IDirectPlayLobby3::RegisterApplication. It is used instead of DPAPPLICATIONDESC when the application is to be started by a launcher application.

typedef struct {
    DWORD   dwSize;   
    DWORD   dwFlags;  
    union {
      LPSTR    lpszApplicationNameA;
      LPWSTR   lpszApplicationName;
    }
    GUID    guidApplication;
    union {
      LPSTR     lpszFilenameA;
      LPWSTR    lpszFilename;
    }
    union {
      LPSTR   lpszCommandLineA;
      LPWSTR  lpszCommandLine;
    }
    union {
      LPSTR   lpszPathA;
      LPWSTR  lpszPath;
    }
    union {
      LPSTR    lpszCurrentDirectoryA;
      LPWSTR   lpszCurrentDirectory;
    }
    LPSTR   lpszDescriptionA;
    LPWSTR  lpszDescriptionW;
    union
    {
      LPSTR   lpszAppLauncherNameA;
      LPWSTR  lpszAppLauncherName;
    };
} DPAPPLICATIONDESC2, *LPDPAPPLICATIONDESC2;

Members

dwSize
Size of the DPAPPLICATIONDESC2 structure, dwSize = sizeof(DPAPPLICATIONDESC2).
dwFlags
Not used. Must be 0.
lpszApplicationNameA, lpszApplicationName
Pointer to a string containing the name of the application. Note: This title should not be localized. Use the lpszDescriptionA and lpszDescriptionW members to localize the application name.
guidApplication
Globally unique identifier (GUID) of the application. This should be the same as the value used in the guidApplication member of the DPSESSIONDESC2 structure when hosting a game session.
lpszFilenameA, lpszFilename
Pointer to a string containing the name of the executable to be launched. Note: The use of a stub executable should be avoided when launching from a lobby. In a lobby launch scenario, the stub should be bypassed and the main executable should be launched.
lpszCommandLineA, lpszCommandLine
Pointer to a string containing command line arguments to be passed to the executable when launched by a lobby.
lpszPathA, lpszPath
Pointer to a string containing the path where the executable is located.
lpszCurrentDirectoryA, lpszCurrentDirectory
Pointer to a string containing the path that the current directory should be set to. Typically, this is the same as lpszPath or lpszPathA.
lpszDescriptionA
Pointer to an ANSI single-byte character string containing a localized description of the application. When EnumLocalApplications is called on an ANSI interface (such as IDirectPlayLobby3A), this string will be returned if it is present. Otherwise, the lpszApplicationName data member will be returned. Note: This string should not contain any multi-byte characters. Set to NULL if no localized ANSI description is needed.
lpszDescriptionW
Pointer to a Unicode sting containing a localized description of the application. When EnumLocalApplications is called on a Unicode interface (such as IDirectPlayLobby3), this string will be returned if it is present. If it is not present, the lpszDescriptionA data member will be converted to Unicode and returned. If neither lpszDescriptionA nor lpszDescriptionW is present, the lpszApplicationName data member will be returned. Note: This string must consist solely of Unicode characters. Set to NULL if no localized Unicode description is needed.
lpszAppLauncherNameA, lpszAppLauncherName
Pointer to a string containing the name of a launcher executable. The launcher is started by the lobby, and it in turn is responsible for launching the application described in lpszApplicationName. The launcher must reside in the same directory as the application.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dplobby.h.

See Also

IDirectPlayLobby3::RegisterApplication