SetConvertStg 함수(ole2.h)

SetConvertStg 함수는 스토리지 개체의 변환 비트를 설정하여 개체가 열릴 때 새 클래스로 변환되어야 함을 나타냅니다. GetConvertStg 함수를 호출하여 설정을 검색할 수 있습니다.

구문

HRESULT SetConvertStg(
  LPSTORAGE pStg,
  BOOL      fConvert
);

매개 변수

pStg

변환 비트를 설정할 스토리지 개체에 대한 IStorage 포인터입니다.

fConvert

TRUE이면 개체를 열 때 변환할 개체를 나타내도록 개체의 변환 비트를 설정합니다. FALSE이면 변환 비트를 지웁니다.

반환 값

가능한 스토리지 및 스트림 액세스 오류는 IStorage::CreateStream, IStorage::OpenStream, ISequentialStream::ReadISequentialStream::Write 메서드를 참조하세요.

설명

SetConvertStg 함수는 포함된 개체에서 변환 비트의 상태 결정합니다. 개체를 한 클래스에서 다른 클래스로 변환하는 과정에서 컨테이너 애플리케이션과 서버 모두에서 호출됩니다. 사용자가 개체를 변환할 개체를 변환할 대화 상자(컨테이너가 OleUIConvert 함수를 호출하여 생성)를 통해 지정하는 경우 컨테이너는 다음 단계를 수행해야 합니다.

  1. 개체가 현재 로드된 경우 언로드합니다.
  2. WriteClassStg를 호출하여 새 CLSID를 개체 스토리지에 씁니다.
  3. WriteFmtUserTypeStg를 호출하여 새 사용자 유형 이름과 기존 기본 형식을 스토리지에 씁니다.
  4. fConvert 매개 변수가 TRUE로 설정된 SetConvertStg를 호출하여 다음에 로드될 때 개체가 새 클래스로 변환되도록 태그가 지정되었음을 나타냅니다.
  5. 개체가 로드되기 직전에 OleDoAutoConvert 를 호출하여 내부적으로 호출하는 OleLoad를 호출하지 않는 한 필요한 개체 변환을 처리합니다.
개체가 스토리지 개체에서 초기화되고 서버가 변환 작업의 대상인 경우 개체 서버는 다음을 수행해야 합니다.
  1. GetConvertStg 함수를 호출하여 변환 비트의 값을 검색합니다.
  2. 비트가 설정된 경우 서버는 새 CLSID와 연결된 형식에 따라 개체에서 데이터를 읽습니다.
  3. 개체 자체를 저장하라는 메시지가 표시되면 개체는 개체의 일반 네이티브 형식과 사용자 형식을 사용하여 WriteFmtUserTypeStg 함수를 호출해야 합니다.
  4. 그런 다음 개체는 fConvert 매개 변수가 FALSE로 설정된 SetConvertStg를 호출하여 개체의 변환 비트를 다시 설정해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 ole2.h
라이브러리 Ole32.lib
DLL Ole32.dll

추가 정보

GetConvertStg