2012-08-14 2 views
0

IShellLink를 사용하여 바로 가기의 대상 경로를 가져옵니다. 대부분 좋은 시간이지만, 파일 중 일부는 한 번 누락되었습니다. 무결성 우선 순위가 문제가 될 수있는 곳을 읽었습니다. 여기에 무결성 우선 순위를 참조하십시오 - http://msdn.microsoft.com/en-us/library/bb625960.aspx 제 질문은 - 내 개발 컴퓨터에서 모든 dll의 무결성 우선 순위를 변경 한 다음이 DLL로 설치 빌드를 빌드 한 다음 다른 시스템으로 설치 빌드를 이동하고 거기에 프로그램을 설치하십시오. ; 내가 설정 한 중간 무결성 우선 순위는 새 컴퓨터에서 유지됩니다. 또는 프로그램을 설치 한 후 무결성 우선 순위를 변경하는 스크립트를 작성해야합니다.
설치 후 아무 것도하지 않아도됩니다.개발 컴퓨터에서 dll의 무결성 우선 순위 설정이 install-build에서 유지됩니까

답변

0

IShellLink 기능을 잘 이해하지 못하기 때문에 Windows Installer 관점에서이 문제를 해결하려고 노력할 것입니다. (MSI를 사용하는 installshield 태그를 참조하여 가정합니다.)

MSI는 Shortcut table을 사용하고 Win7/Server2008R2를 사용하는 경우 ShortcutProperty Table을 사용합니다.

을 응용 프로그램의 바로 가기 파일의 System.AppUserModel.ID 특성에서이 문서 Application User Model IDs (AppUserModelIDs) 말한다 섹션이 있습니다. 바로 가기 (IShellLink, CLSID_ShellLink 또는 .lnk 파일로) 은 IPropertyStore 및 기타 속성 설정 메커니즘을 통해 셸 전체에서 사용되는 속성을 지원합니다. 이렇게하면 작업 표시 줄에 핀 고정 바로 가기를 식별하고 해당 프로세스에 속하는 창이 적절하게 해당 작업 표시 줄 단추와 연결되도록 할 수 있습니다. 참고 바로 가기를 만들 때 바로 가기에 System.AppUserModel.ID 속성을 적용해야합니다. Microsoft MSI (Windows Installer)를 사용하여 응용 프로그램을 설치할 때 MsiShortcutProperty 테이블을 사용하면 설치 중에 AppUserModelID가 바로 가기에 적용될 수 있습니다.

MsiShortCutProperty 테이블은 아주 새로운 그리고 난 정말 개발자가 나를 아직 활용 그래서 설정할 수있는 모든 다양한 속성이 무엇인지를 자세히 파고하지 않은 원하는에 와서 없었어요. 그러나 이것이 내가 내려야 할 길이라고 생각합니다.

+0

죄송합니다. 혼란 스럽습니다. 나는 단축키에 대한 나의 초기 문제에 대해서는 언급하지 말았어야했다. 내 질문은 설치 빌드에 필요한 dll의 무결성 우선 순위를 설정하면 이러한 설정은 내가 프로그램을 설치하는 컴퓨터에 유지됩니까? 또는 대상 컴퓨터에서 dll의 무결성 우선 순위를 어떻게 확인할 수 있습니까? 프로그램이 제대로 작동하는지 확인하기 위해 프로그램을 실행할 수 있지만 원래의 문제는 일시적인 것이므로 매우 지루합니다. – dysonfree

+0

그래서 인터넷 검색에서 dll의 prioerity를 ​​설정할 수 있습니까 아니면 그것은 exe입니까? 나는 정말로 그 공간을 전혀 알지 못한다고해도 그것이 프로세스의 것이라고 생각한다. 업데이트중인 exe를 참조한 문서입니다. 나는 그것이 설치를 통해 지속될 것이라고 생각하지 않으며 사용자 지정 작업을 호출하여 특성을 업데이트해야합니다. –

+0

나는 dll에 IP를 설정하고 dll을 대상 컴퓨터로 옮긴 다음 dll을 등록하고 프로그램을 실행했습니다. 그것은 원래 문제를 해결하는 것 같습니다. 이제 "새"dll을 사용하여 msi를 다시 빌드해야합니다. 가장 안전한 방법은 대상 컴퓨터에 MSI를 설치 한 후 IP 설정을 다시 실행하는 것입니다. 나는 너에게 동의한다. 감사. – dysonfree