是的。您可以通过将网络驱动器的任何值设置为DirectoryCombo来防止此问题。运行该对话框之前的属性。编写自定义操作以读取网络驱动器,并将任何一个驱动器值设置为该目录属性,并在InstallUISequence中安排自定义操作。
[CustomAction]
public static ActionResult CustomAction1(Session session)
{
DriveInfo[] drives = DriveInfo.GetDrives();
foreach (DriveInfo drvInfo in drives)
{
if (drvInfo.DriveType == DriveType.Network)
{
session["SHARED_DRIVE"] = drvInfo.Name;
break;
}
}
return ActionResult.Success;
}
<Binary Id="SharedDrive" SourceFile="TestProject.CA.dll" />
<CustomAction Id="SHAREDDRIVE" BinaryKey="SharedDrive" DllEntry="CustomAction1" Return="check" />
<InstallUISequence>
<Custom Action="SHAREDDRIVE" After="AppSearch">Not Installed</Custom>
</InstallUISequence>
正是我需要的!只是为那些不知道如何使用此代码的人说清楚:最后要做的事情是引用“DirectoryCombo”元素中的公共'SHARED_DRIVE'变量,例如: ' –
BdN3504
2013-05-23 08:30:27