사용자 지정 처리기 작성
기본 RDS 지원을 원하는 IIS 서버 관리자이지만 사용자 요청 및 액세스 권한을 더 많이 제어하려는 경우 사용자 고유의 처리기를 작성할 수 있습니다.
MSDFMAP.Handler는 IDataFactoryHandler 인터페이스를 구현합니다.
중요하다
Windows 8 및 Windows Server 2012부터 RDS 서버 구성 요소는 더 이상 Windows 운영 체제에 포함되지 않습니다(자세한 내용은 Windows 8 및 Windows Server 2012 호환성 쿡북 참조). RDS 클라이언트 구성 요소는 이후 버전의 Windows에서 제거됩니다. 새 개발 작업에서 이 기능을 사용하지 말고 현재 이 기능을 사용하는 애플리케이션을 수정할 계획입니다. RDS를 사용하는 애플리케이션은 WCF Data Service마이그레이션해야 합니다.
IDataFactoryHandler 인터페이스
이 인터페이스에는 두 가지 메서드인 GetRecordset 및 Reconnect가 있습니다. 두 방법 모두 CursorLocation 속성을 adUseClient로 설정해야 합니다.
두 메서드 모두 "Handler=" 키워드의 첫 번째 쉼표 앞에 나타나는 인수를 사용합니다. 예를 들어 "Handler=progid,arg1,arg2;"
"arg1,arg2"
인수 문자열을 전달하고 "Handler=progid"
null 인수를 전달합니다.
GetRecordset 메서드
이 메서드는 데이터 원본을 쿼리하고 제공된 인수를 사용하여 새 Recordset 개체를 만듭니다. 레코드 집합adLockBatchOptimistic 사용하여 열어야 하며 비동기적으로 열어서는 안 됩니다.
논쟁
연결 문자열.
처리기 인수 처리기에 대한 인수입니다.
쿼리 쿼리를 만들기 위한 명령 텍스트입니다.
ppRSRecordset가 반환될 포인터입니다.
메서드 다시 연결
이 메서드는 데이터 원본을 업데이트합니다. 새로운 Connection 객체를 생성하고, 지정된 Recordset를 연결합니다.
논쟁, 주장
연결 문자열을.
인수 처리기의 인수입니다.
pRS A Recordset 개체입니다.
msdfhdl.idl
이는 msdfhdl.idl 파일에 표시되는 IDataFactoryHandler 대한 인터페이스 정의입니다.
[
uuid(D80DE8B3-0001-11d1-91E6-00C04FBBBFB3),
version(1.0)
]
library MSDFHDL
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
// TLib : Microsoft ActiveX Data Objects 2.0 Library
// {00000200-0000-0010-8000-00AA006D2EA4}
#ifdef IMPLIB
importlib("implib\\x86\\release\\ado\\msado15.dll");
#else
importlib("msado20.dll");
#endif
[
odl,
uuid(D80DE8B5-0001-11d1-91E6-00C04FBBBFB3),
version(1.0)
]
interface IDataFactoryHandler : IUnknown
{
HRESULT _stdcall GetRecordset(
[in] BSTR conn,
[in] BSTR args,
[in] BSTR query,
[out, retval] _Recordset **ppRS);
// DataFactory will use the ActiveConnection property
// on the Recordset after calling Reconnect.
HRESULT _stdcall Reconnect(
[in] BSTR conn,
[in] BSTR args,
[in] _Recordset *pRS);
};
};
참고 항목
사용자 지정 파일 연결 섹션
사용자 지정 파일 로그 섹션
사용자 지정 파일 SQL 섹션
사용자 지정 파일 UserList 섹션
DataFactory 사용자 지정
필요한 클라이언트 설정
사용자 지정 파일 이해하기