Click here to Skip to main content
13,256,012 members (48,506 online)
Click here to Skip to main content


93 bookmarked
Posted 4 Sep 2002

Automated IE SaveAs MHTML

, 4 Sep 2002
This article demonstrates how to automate IE's Save As functionality
#pragma once

//     component on an apartment thread.
class CSaveAsThread 
	// Constructor
	CSaveAsThread() ;

	// Destructor
	virtual ~CSaveAsThread()  ;

	// Create and start the thread.
	BOOL StartThread() ;

	// Stop the thread.
	void StopThread() ;

	// Current thread status
	BOOL IsThreadStarted() ;

	// public API

	void SetKeyWnd(HWND hwnd);
	void Config(CString &szFilename, SaveType type);
	CString GetFilename();
	SaveType GetSaveAsType();

// Member variables

	// ID of thread
	DWORD m_ThreadId ;

	// Handle to thread
	HANDLE m_hThread ;

	// Event signals thread to continue.
	HANDLE m_hComponentReadyEvent ;

	// Time to wait before calling WorkerFunction
	DWORD m_WaitTime ;

	BOOL m_bShouldStopNow;

	HWND			m_keyhwnd;
	CString			m_szFilename;
	SaveType		m_nSaveType;

// Internal helper functions
	// Thread procedure
	static DWORD WINAPI RealThreadProc(void* pv) ;

	// Member thread procedure
	DWORD ClassThreadProc() ;

} ;

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Addicted to reverse engineering. At work, I am developing business intelligence software in a team of smart people (independent software vendor).

Need a fast Excel generation component? Try xlsgen.

You may also be interested in...

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.171114.1 | Last Updated 5 Sep 2002
Article Copyright 2002 by Stephane Rodriguez.
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid