Q&A

  • SHGetSpecialFolderLocation() 에 관한 질문입니다.
MSDN에 가서 확인한 결과 CSIDL 값중 CSIDL_PROGRAM_FILES 이 있는데

SHGetSpecialFolderLocation() 쓰려니

CSIDL_PROGRAM_FILES 상수가 'undeclared Identifier'라고 에러가 뜹니다.



전부 확인해 보지 못했지만 CSIDL_PERSONAL 같은 값을 넣으면 에러 없이 정확한

값을 리턴해 주는 데요..



CSIDL 값들은 shlobj.pas 에 기술되어 있는 있는데 MSDN에 나온 값들에

절반도 정의되어 있지 않습니다.



패키지를 다시 컴파일해서 사용하려 해도 CSIDL_PROGRAM_FILES 의 정확한 상수

값을 알 수가 없으니 막막합니다. 대충 때려 잡아도 한 30번 정도는 해야

될 것 같은데요..



다른 방법으로도 원하는 폴더명을 얻을 수는 있지만 특이한 사용자가 있을 경우

에러가 발생할 것 같습니다.



누구 해결방법이나 CSIDL_PROGRAM_FILES의 상수값을 알고 계신분은 도움 주십시요.







1  COMMENTS
  • Profile
    최용일 2000.07.21 21:46
    안녕하세요. 최용일입니다.



    현재 델파이 최신 버전인 v5.0에서는 쉘 v4.72까지밖에 지원을 안합니다. 윈도우2000과



    IE v5.5에 깔린 쉘v5.0이상에서 정의된 상수나 함수들은 직접 정의해서 사용하는 수 밖



    에 없습니다. CSIDL 상수리스트는 최신버전의 VC++의 shlobj.h파일에 보시면 있습니다.



    지금 저한테 이 파일이 없어서 알려드리지 못하네요... 주위 분들중 VC하시는 분에게



    얻으셔서 보세요...



    ^^ 항상 즐코하세요.



    정덕 wrote:

    > MSDN에 가서 확인한 결과 CSIDL 값중 CSIDL_PROGRAM_FILES 이 있는데

    > SHGetSpecialFolderLocation() 쓰려니

    > CSIDL_PROGRAM_FILES 상수가 'undeclared Identifier'라고 에러가 뜹니다.

    >

    > 전부 확인해 보지 못했지만 CSIDL_PERSONAL 같은 값을 넣으면 에러 없이 정확한

    > 값을 리턴해 주는 데요..

    >

    > CSIDL 값들은 shlobj.pas 에 기술되어 있는 있는데 MSDN에 나온 값들에

    > 절반도 정의되어 있지 않습니다.

    >

    > 패키지를 다시 컴파일해서 사용하려 해도 CSIDL_PROGRAM_FILES 의 정확한 상수

    > 값을 알 수가 없으니 막막합니다. 대충 때려 잡아도 한 30번 정도는 해야

    > 될 것 같은데요..

    >

    > 다른 방법으로도 원하는 폴더명을 얻을 수는 있지만 특이한 사용자가 있을 경우

    > 에러가 발생할 것 같습니다.

    >

    > 누구 해결방법이나 CSIDL_PROGRAM_FILES의 상수값을 알고 계신분은 도움 주십시요.

    >

    >

    >