고유한 사용자 지정된 처리기 작성
기본 RDS 지원을 원하는 IIS 서버 관리자이지만 사용자 요청 및 액세스 권한에 대한 제어를 더 많이 원하는 경우 사용자 고유의 처리기를 작성할 수 있습니다.
MSDFMAP.Handler는 IDataFactoryHandler 인터페이스를 구현합니다.
Important
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 Method
이 메서드는 데이터 원본을 쿼리하고 제공된 인수를 사용하여 새 Recordset 개체를 만듭니다. 레코드 집합은 adLockBatchOptimistic으로 열어야 하며 비동기적으로 열리지 않아야 합니다.
인수
conn 연결 문자열
args 처리기의 인수
query 쿼리를 만들기 위한 명령 텍스트
ppRS레코드 집합을 반환할 포인터입니다.
Reconnect 메서드
이 메서드는 데이터 원본을 업데이트합니다. 새 Connection 개체를 만들고 지정된 레코드 집합을 연결합니다.
인수
conn 연결 문자열
args 처리기의 인수
pRSRecordset 개체
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);
};
};
참고 항목
사용자 지정 파일 Connect 섹션
사용자 지정 파일 Logs 섹션
사용자 지정 파일 SQL 섹션
사용자 지정 파일 UserList 섹션
DataFactory 사용자 지정
필수 클라이언트 설정
사용자 지정 파일 이해