2009-09-28 2 views
1

regsvr32를 사용하여 델파이 어셈블리를 등록합니다. 현재 Desktop Authority를 ​​사용하여 .NET 응용 프로그램 용 설치 패키지를 배포하고 있습니다. 우리는 .NET 응용 프로그램에서 델파이 어셈블리를 사용할 필요가 있으므로 설치시 regsvr32를 사용하여 어셈블리를 등록해야합니다. 배치 파일이나 regsvr32를 호출하는 exe를 사용하여 데스크탑 권한에서 등록하면 문제가 발생하지만로드하려고하면 어셈블리가 충돌합니다. 나는 Com Class Factory Error : 800401f9를 가져 오는 중 오류가 발생했다는 COm Exception을 얻는다. 어셈블리를 로컬에 등록 했으므로 제대로 작동합니다. 나는 또한 레지스트리 키를 설치 프로그램에 직접 추가하려고 시도했으나 같은 오류가 발생하지 않습니다. Desktop Autority 또는 설치 프로그램에서이 작업을 수행 할 수있는 방법이 있습니까?Regsvr32 및 Desktop 권한

+0

regsvr32에 등록하려고하는 dll은 win32 dll입니다. 맞습니까? 또한 종속성이 누락 될 수 있습니다. 런타임 패키지 및 rtl100.bpl이 ​​누락 된 것처럼 컴파일 된 것일 수도 있습니다. 더 많은 정보를 얻기 위해 디버깅을 시도 했습니까? –

+0

그래,하지만 디버깅을 시도했지만 모두 얻을 ComException입니다. Regsvr32를 로컬에서 cmd를 실행할 때 모든 작동 때문에 때문에 모든 종속성을 누락해서는 안됩니다. 하지만 설치 프로그램이나 DA에서 아무 것도 시도하지 않으면 작동하지 않습니다. 예, win32 dll입니다. – Andy

답변

0

관리자로 설치를 실행 해 보았습니까? 또한 설치 프로그램의 이름이 또는 으로 처음 5 자 또는 7자를 설치해야합니다. 그렇지 않다면 VISTA/Win7에 설치하면 응용 프로그램 설치 관리자가 레지스트리를 제대로 업데이트하지 못할 수 있습니다.

+0

관리자로 실행 중입니다. 이름은 setup입니다. 우리는 현재 win XP를 실행 중입니다. 이 문제를 일으키는 것은 매우 이상하게 보입니다. – Andy