Source code of Windows XP (NT5)
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.

71 lines
1.8 KiB

  1. /******************************Module*Header*******************************\
  2. * Module Name: getinfo.h
  3. *
  4. * Author: David Stewart [dstewart]
  5. *
  6. * Copyright (c) 1998 Microsoft Corporation. All rights reserved.
  7. \**************************************************************************/
  8. #if !defined(AFX_CDNETDLG_H__903DF404_39B8_11D1_BA31_00A0C913D47E__INCLUDED_)
  9. #define AFX_CDNETDLG_H__903DF404_39B8_11D1_BA31_00A0C913D47E__INCLUDED_
  10. #if _MSC_VER >= 1000
  11. #pragma once
  12. #endif // _MSC_VER >= 1000
  13. #include "cdnet.h"
  14. #include "wininet.h"
  15. /////////////////////////////////////////////////////////////////////////////
  16. // CGetInfoFromNet
  17. class CCDNet : public ICDNet
  18. {
  19. public:
  20. CCDNet();
  21. ~CCDNet();
  22. public:
  23. // IUnknown
  24. STDMETHOD(QueryInterface)(REFIID riid, LPVOID *ppvObj);
  25. STDMETHOD_(ULONG,AddRef)();
  26. STDMETHOD_(ULONG,Release)();
  27. // ICDNet
  28. STDMETHOD(SetOptionsAndData)(void* pOpt, void* pData);
  29. STDMETHOD(Download)(DWORD dwDeviceHandle, TCHAR chDrive, DWORD dwMSID, LPCDTITLE pTitle, BOOL fManual, HWND hwndParent);
  30. STDMETHOD_(BOOL,IsDownloading)();
  31. STDMETHOD(CancelDownload)();
  32. STDMETHOD(Upload)(LPCDTITLE pTitle, HWND hwndParent);
  33. STDMETHOD_(BOOL,CanUpload)();
  34. private:
  35. DWORD m_dwRef;
  36. };
  37. class CGetInfoFromNet
  38. {
  39. public:
  40. // Construction
  41. CGetInfoFromNet(DWORD cdrom, DWORD dwMSID, HWND hwndParent); // standard constructor
  42. ~CGetInfoFromNet();
  43. //main call
  44. BOOL DoIt(BOOL fManual, LPCDTITLE pTitle, TCHAR chDrive);
  45. void AddToBatch(int nNumTracks, TCHAR* szQuery);
  46. // Implementation
  47. private:
  48. //functions
  49. void BuildQuery();
  50. int readtoc();
  51. //data
  52. unsigned long m_toc[101];
  53. unsigned long m_TotalLength;
  54. TCHAR m_Query[INTERNET_MAX_PATH_LENGTH-INTERNET_MAX_HOST_NAME_LENGTH];
  55. DWORD m_MS;
  56. DWORD DevHandle;
  57. int m_Tracks;
  58. };
  59. #endif // !defined(AFX_CDNETDLG_H__903DF404_39B8_11D1_BA31_00A0C913D47E__INCLUDED_)