2012-03-26 1 views
0

Windows7에서 일반 사용자 (elideated privilages)로 실행되는 C# Winforms 응용 프로그램을 개발 중입니다. 응용 프로그램은 사용자가 로그인 한 도메인이 아닌 다른 도메인에있는 폴더에 액세스해야합니다.C# winforms : 다른 도메인의 폴더에 액세스하기 위해 자격 증명을 가져오고 사용하는 중

사용자가 폴더 및 응용 프로그램 내 다른 도메인의 포함 된 파일에 액세스하는 데 필요한 새 자격 증명을 입력하도록 요청하는 방법을 알고 싶습니다.

이상적으로, 나는 자격 증명 대화 상자를 팝업하고 싶습니다. 실제로 Windows와 비슷한 방식으로 사용자 ID, 암호 및 도메인을 묻습니다. 이 작업을 수행하는 방법과 폴더의 파일에 액세스 할 수 있도록 사용자가 제공 할 값을 어떻게 처리해야하는지 확신 할 수 없습니다.

예제가 매우 좋을 것입니다.

감사 C#을 사용자

답변

0

당신은 당신의 코드에서 특정 사용자를 가장 advapi32.dll 방법을 사용 할 수 있습니다. 봐 this 기사를보십시오.

0

CredUIPromptForWindowsCredentials 기능을 사용하여 자세한 내용을 묻는 메시지를 표시 할 수 있습니다.

파일 공유에 연결하는 경우 사용자를 가장 할 필요가 없습니다. 다른 자격 증명을 WNetAddConnection3 함수에 전달하면됩니다.

C#에서 호출하려면 P/Invoke이 필요합니다.

+0

CredUIPromptForWindowsCredentials를 사용하고 사용자가 해당 userid를 입력하면 pwd 및 domain에서 해당 폴더에 액세스해야합니다. inderstans는 액세스 권한을 얻기 위해이 정보를 사용하는 방법입니다. 달성하기 위해 WNetAddConnection3을 어떻게 사용할 수 있습니까? 예를 들어 설명해 주시겠습니까? 또한이 방법을 사용하려면 사용자가 관리자 여야합니까? – user169