2013-10-25 2 views
0

Program Files 디렉터리의 파일 이름을 바꿀 때 내 응용 프로그램에 문제가 있습니다. 내 응용 프로그램은 XP 컴퓨터에서 잘 작동하지만 Win7에서 다음과 같은 오류가 발생합니다. "프로 시저 호출 또는 인수가 유효하지 않습니다."Win7에서 Program Files 디렉터리의 파일 이름을 바꿀 수 없습니다.

Rename(Agent_Working_Directory & "\DM_Agent.exe", Agent_Working_Directory & "\DM_Agent.prv") 

Agent_Working_Directory 포인트 :

내 코드는 간단하다 "C : \ Program 파일 (x 86) \ 회사 명 \ 응용 프로그램 이름"한마디에 기본적으로

, 내가되고 싶어 이전 exe 파일의 이름을 .prv로 바꿀 수있어서 새로운 exe 파일로 내 응용 프로그램을 자동 업그레이드 할 수 있습니다.

앞서 언급 한 것처럼 정확히 동일한 코드가 XP 시스템에서 동일하게 작동합니다. 로컬 사용자에게는 완전한 로컬 관리자 권한이 있습니다.

의견이나 의견을 보내 주시면 감사하겠습니다.

+2

에게 도움이 될 수 있습니다 다음, 실제로 권한 상승 프롬프트를 요구하는 높은 때까지 관리자 권한이없는 사용자를 의미합니다. 저는 VB 녀석이 아니기 때문에 VB에서 그렇게하는 법을 말할 수는 없지만 일어날 필요가 있습니다. C++과 같이 작동하면 관리자가 요구하는 exe에 첨부 된 매니페스트가 해당 작업을 수행합니다. –

+0

응답 해 주셔서 감사합니다. 사용자 개입없이 자동 업데이트를 백그라운드에서 실행하려면 매니페스트가 허용합니까? 아니면 사용자가 좋아요 등을 눌러야합니까? – Riples

답변

0

코드가 완벽하게 작동합니다. "수정"이 가능하도록 계정의 프로그램 파일에 대한 권한을 설정하기 만하면됩니다.

아마도 당신 UAC가 활성화되어 http://www.sevenforums.com/general-discussion/235732-allow-installed-program-rename-files-under-program-files-x86.html

+0

'\ Program Files'에 대한 접근 권한을 수정할 필요가 없습니다. 그렇게하는 것이 일반적으로 좋지 않습니다. 그리고 많은 고객들이 그런 식으로 프로그램을 거부 할 것입니다. –

+0

그 순간에 그의 딜레마에 대한 가장 쉬운 해결책이 될 것 같았습니다. 괜찮 으면 내가 왜 물어 보는거야? 악성 코드가 컴퓨터에서 실행되어 프로그램 파일을 수정할 수 없습니까? 하지만 UAC가 이미 그것을 막지는 않았습니까? –

+2

예. 맬웨어는 1 위입니다.하지만 정교하지 않은 사용자 또는 서두른 정교한 사용자의 무고한 실수도 있습니다. '\ Program Files'와 같은 폴더에 대한 쓰기 액세스가 허용되면 성을 향해 문이 열립니다. UAC는 Windows를 보호 할 필요가 없다고 말한 폴더 사용 권한을 수정함으로써이를 중지하지 않습니다. 일반적으로 시스템 리소스에 대한 보호 수준을 낮추어야한다고 생각되면 앱이 고장 났기 때문에 앱을 다시 생각해야합니다. –

관련 문제