Visual Studio 2010 fails on a Windows XP SP3 system with the following error message: "DDSet_Error: Internal error: 2"
After reviewing the MSI log, I found that the failure occurs while executing "ReserveHttp" custom Action:
MSI (s) (7C:EC) [21:20:09:478]: Executing op: CustomActionSchedule(Action=ReserveHttp.992B75DB_179A_4B48_B260_9FD0862C9A76,ActionType=3073,Source=BinaryData,Target=Install,) MSI (s) (7C:A8) [21:20:09:509]: Invoking remote custom action. DLL: C:\WINDOWS\Installer\MSI66.tmp, Entrypoint: Install 05/09/10 21:20:09 DDSet_Entry: WcfToolsInstall 05/09/10 21:20:09 DDSet_Status: HttpReservation::PerformInstall 05/09/10 21:20:09 DDSet_Status: HttpReservation::IsInstalled 05/09/10 21:20:09 DDSet_Status: HttpLibrary::HttpInitialize 05/09/10 21:20:10 DDSet_Status: HttpLibrary::HttpQueryServiceConfiguration 05/09/10 21:20:10 DDSet_Status: HttpLibrary::HttpTerminate 05/09/10 21:20:10 DDSet_Status: HttpReservation::ReserveURL 05/09/10 21:20:10 DDSet_Status: HttpLibrary::HttpInitialize 05/09/10 21:20:10 DDSet_Status: HttpLibrary::HttpSetServiceConfiguration 05/09/10 21:20:10 DDSet_Status: HttpLibrary::HttpDeleteServiceConfiguration MSI (s) (7C!CC) [21:20:25:997]: Product: Microsoft Visual Studio 2010 Professional - ENU -- 05/09/10 21:20:10 DDSet_Error: Internal error: 2.
I ran httpcfg.exe tool http://technet.microsoft.com/en-us/library/cc787508%28WS.10%29.aspx “httpcfg.exe query urlacl > urlacl.txt” and looking at the utlacl.txt log, it looks like the system has an existing reservation which conflicts: URL : https://+:8732/
ACL : D:(A;;GX;;;S-1-5-21-143435xxx-1455057xxx-3436625xxx-1025)
So before we try to reserve we attempt to query for the exact reservation: http://+:8732/Design_Time_Addresses/, this fails, since it obviously doesn’t exist.
We then try to set the reservation, this fails because of the conflicting reservation. The delete then fails as well, because the exact reservation does not exist. It is likely that the some other program or application has coincidentally used the same port which it used.
In order to workaround this problem, we would need to remove this urlacl with httpcfg before running Visual Studio 2010.
The command would be httpcfg.exe delete urlacl /u https://+:8732/