Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

90 lines
2.3 KiB

  1. #ifndef _ULLAUNCH_H_
  2. #define _ULLAUNCH_H_
  3. #include <windows.h>
  4. #include "ulserror.h"
  5. #include <pshpack8.h> /* Assume 8 byte packing throughout */
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. typedef struct tagUlsApp
  10. {
  11. GUID guid; // application guid
  12. long port; // port number
  13. PTSTR pszPathName; // full path of the app
  14. PTSTR pszCmdTemplate; // command-line template, could be NULL
  15. PTSTR pszCmdLine; // expanded command line, could be NULL
  16. PTSTR pszWorkingDir; // working directory, could be NULL
  17. long idxDefIcon; // default icon index
  18. PTSTR pszDescription; // description of this app
  19. HICON hIconAppDef; // default icon
  20. BOOL fPostMsg; // launch existing app by posting a msg
  21. }
  22. ULSAPP;
  23. typedef struct tagUlsResult
  24. {
  25. DWORD dwIPAddr;
  26. long idxApp; // which app is selected thru ui
  27. long nApps;
  28. // TO BE TURNED ON ULSAPP App[1];
  29. ULSAPP App[4];
  30. }
  31. ULSRES;
  32. typedef struct tagUlsToken
  33. {
  34. TCHAR cPrior;
  35. TCHAR cPost;
  36. PTSTR pszToken;
  37. WORD cbTotal;
  38. }
  39. ULSTOKEN;
  40. enum
  41. {
  42. TOKEN_IULS_BEGIN,
  43. TOKEN_IULS_END,
  44. TOKEN_RES,
  45. NumOf_Tokens
  46. };
  47. HRESULT WINAPI UlxParseUlsFile ( PTSTR pszUlsFile, ULSRES **ppUlsResult );
  48. typedef HRESULT (WINAPI *PFN_UlxParseUlsFile) ( PTSTR, ULSRES ** );
  49. #define ULXPARSEULSFILE TEXT ("UlxParseUlsFile")
  50. HRESULT WINAPI UlxParseUlsBuffer ( PTSTR pszBuf, DWORD cbBufSize, ULSRES **ppUlsResult );
  51. typedef HRESULT (WINAPI *PFN_UlxParseUlsBuffer) ( PTSTR, DWORD, ULSRES ** );
  52. #define ULXPARSEULSBUFFER TEXT ("UlxParseUlsBuffer")
  53. void WINAPI UlxFreeUlsResult ( ULSRES *pUlsResult );
  54. typedef HRESULT (WINAPI *PFN_UlxFreeUlsResult) ( ULSRES * );
  55. #define ULXFREEULSRESULT TEXT ("UlxFreeUlsResult")
  56. HRESULT WINAPI UlxFindAppInfo ( ULSRES *pUlsResult );
  57. typedef HRESULT (WINAPI *PFN_UlxFindAppInfo) ( ULSRES * );
  58. #define ULXFINDAPPINFO TEXT ("UlxFindAppInfo")
  59. HRESULT WINAPI UlxLaunchApp ( HWND hWnd, ULSRES *pUlsResult );
  60. typedef HRESULT (WINAPI *PFN_UlxLaunchApp) ( HWND, ULSRES * );
  61. #define ULXLAUNCHAPP TEXT ("UlxLaunchApp")
  62. #ifdef __cplusplus
  63. }
  64. #endif
  65. #include <poppack.h> /* End byte packing */
  66. #endif // _LAUNCH_H_