⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uploader.h

📁 我改写的一个asp上载文件的组件程序
💻 H
字号:
// Uploader.h: Definition of the CUploader class
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_UPLOADER_H__9458DE35_F495_48B1_B63C_72FDE3B9242C__INCLUDED_)
#define AFX_UPLOADER_H__9458DE35_F495_48B1_B63C_72FDE3B9242C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "resource.h"       // main symbols

/////////////////////////////////////////////////////////////////////////////
// CUploader

class CUploader : 
	public IDispatchImpl<IUploader, &IID_IUploader, &LIBID_ASPUPLOADERLib>, 
	public ISupportErrorInfo,
	public CComObjectRoot,
	public CComCoClass<CUploader,&CLSID_Uploader>
{
public:
	CUploader();
	~CUploader();
BEGIN_COM_MAP(CUploader)
	COM_INTERFACE_ENTRY(IDispatch)
	COM_INTERFACE_ENTRY(IUploader)
	COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
//DECLARE_NOT_AGGREGATABLE(CUploader) 
// Remove the comment from the line above if you don't want your object to 
// support aggregation. 

DECLARE_REGISTRY_RESOURCEID(IDR_Uploader)
// ISupportsErrorInfo
	STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);

// IUploader
public:
	STDMETHOD(SetOverwrite)(/*[in]*/long overwrite);
	STDMETHOD(SetAllowedExtensions)(/*[in]*/ SAFEARRAY *FileExtensions);
	STDMETHOD(SetForbiddenExtensions)(/*[in]*/ SAFEARRAY* FileExtensions);
	STDMETHOD(SetDestinationPath)(/*[in]*/ BSTR bsPath);
	STDMETHOD(GetError)(/*[in]*/ long lError, /*[out, retval]*/ BSTR* psReturn);
	STDMETHOD(SetMaxFileSize)(/*[in]*/ long lSize);
	STDMETHOD(GetFormValue)(/*[in]*/ BSTR bsFieldName, /*[out, retval]*/ BSTR* psReturn);
	STDMETHOD(UploadFile)(/*[in]*/ BSTR bsFieldName, /*[out, retval]*/ long* plResult);
	STDMETHOD(GetFileSize)(/*[in]*/ BSTR bsFieldName, /*[out, retval]*/ long* file_size);
	STDMETHOD(GetUploadFilename)(/*[in]*/ BSTR bsField, /*[out, retval]*/ BSTR* pbsFilename);
	STDMETHOD(StartUpload)(/*[in]*/IUnknown *pIUnk, /*[out,retval]*/long *ret);

protected:	
	BOOL FileExtensionAllowed(LPCTSTR lpszExtension);

	long    m_lMaxSize;
	CString m_sDestPath;
	CStringList m_ExtensionList;
	CStringList m_ForbiddenList;

	LPBYTE  m_lpBytesData; 
	long    m_lDataSize;
	CString m_sHeader;
	CString m_sDelimiter;
	long m_file_size;
	CString m_errmsg;
	long m_overwrite;
};

#endif // !defined(AFX_UPLOADER_H__9458DE35_F495_48B1_B63C_72FDE3B9242C__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -