편집 : "내 문서"대신 "문서"를 사용하면 오류가 제거됩니다. 또한 절대 경로 대신 Windows 특수 폴더를 사용하는 것이 좋습니다.이 액세스 거부 오류의 원인은 무엇입니까?
내 바탕 화면의 모든 바로 가기를 자신의 바로 가기 버전을 가진 필자가 작성한 응용 프로그램으로 바꾸려고합니다. 새로운 단축키에 이전 기능과 동일한 기능을 추가 할 계획입니다. 다른 작업을하기 전에 바로 가기가 가리키는 파일이나 폴더를 여는 것이 중요하다고 생각했습니다. 여기에 코드의 샘플 조각입니다 :
public partial class Form1 : Form
{
Process p1, p2, p3, p4;
public Form1()
{
InitializeComponent();
p1 = new Process();
p2 = new Process();
p3 = new Process();
p4 = new Process();
p1.StartInfo.FileName = "cmd";
p2.StartInfo.FileName = "c:\\Users\\Cheese\\My Documents";
p3.StartInfo.FileName = "c:\\Users\\Cheese\\AppData";
p4.StartInfo.FileName = "c:\\Program Files (x86)";
}
private void button1_Click(object sender, EventArgs e)
{
p1.Start();
}
private void button2_Click(object sender, EventArgs e)
{
p2.Start();
}
private void button3_Click(object sender, EventArgs e)
{
p3.Start();
}
private void button4_Click(object sender, EventArgs e)
{
p4.Start();
}
}
이 윈도우 7 홈 프리미엄에 있습니다. Visual C# 2010 Express에서 디버깅하는 동안 오류가 발생합니다. System32, AppData 및 여러 폴더 같은 다른 폴더를 같은 드라이브의 다른 파티션에 열었습니다. 다양한 음악 파일을 열고 다른 프로그램을 실행할 수있었습니다. 내 문서를 제외한 모든 것이 정상적으로 작동하는 것 같습니다. Windows 폴더에는 개인 파일의 기본 위치보다 큰 제한이 있다고 생각합니다. 나는 그것이 실제로 권한 일이 아니라고 생각하고 있지만, 나는 심지어 그 문제가 무엇인지 추측 할 수 없다. 내 문서를 탐색기로 열 수 있습니다. 디렉토리간에 파일을 이동할 수 있습니다.
이렇게 간단한 것 같습니다. Windows가 어떻게 작동하는지 완전히 이해하지 못한다는 것을 많이 알고 있습니다. 그러나이 상황과 다른 몇몇 사람들은 Windows에 대해별로 알지 못한다고 생각합니다. 이 운영 체제를 잘 이해하기 위해 살펴볼 수있는 좋은 책이나 웹 리소스는 무엇입니까? 초보자의 관점에서 파일 관리 및 시스템 권한에 중점을 둘 가능성이 있습니까?
Windows 7에서 "내 문서"는 "문서"에 대한 연결 링크이므로 접합점에서의 프로세스 시작 문제 일 수 있습니다. "c : \\ Users \\ Cheese \\ Documents"를 시작하면 같은 오류가 발생합니까? –
사용자 프로필에서 해당 폴더를 찾으려고 했습니까? – Steve
솔루션이 얼마나 간단한 지 거의 불쌍합니다."내 문서"대신 "문서"를 사용하면됩니다. – Cheese