wix
2016-05-19 9 views 1 likes 
1

Ich erhalte den Fehler "konnte nicht auf den Netzwerkspeicherort zugreifen \ Common" beim Ausführen des Installers.wix installer "konnte nicht auf den Netzwerkspeicherort zugreifen"

Alle Ideen werden sehr geschätzt.

<Property Id="BINDIR"> 
    <RegistrySearch Id='BinDirReg' Type='raw' Root='HKLM' Key='SOFTWARE\xxx' Name='AppDir' Win64='no'/> 
</Property> 
<Property Id="DATADIR"> 
    <RegistrySearch Id='DataDirReg' Type='raw' Root='HKLM' Key='SOFTWARE\xxx' Name='DataDir' Win64='no'/> 
</Property> 
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" /> 
<UIRef Id="WixUI_InstallDir" /> 
<SetDirectory Id="TESTBINFOLDER" Value="[BINDIR]\a\b\c" /> 
<SetDirectory Id="TESTDATAFOLDER" Value="[DATADIR]\a\b\c" /> 
<SetDirectory Id="TESTCOMMONDATAFOLDER" Value="[DATADIR]\Common" /> 

Antwort

2

Der Wert der DATADIR Eigenschaft ist leer, so wird der Wert von TESTCOMMONDATAFOLDER ist „\ Common“

Sie sollten wirklich nicht Ihr Sie allerersten versuchen, auf, da die Verzeichnisstruktur auf diese Weise definieren installieren Ich werde versuchen, den TESTCOMMONDATAFOLDER auf [DATADIR] \ Common zu setzen, aber es gibt keine Möglichkeit, dass Ihr Registrierungsschlüssel in der Registrierung vorhanden ist.

Sie sollten Ihre Verzeichnisstruktur als Standardbasislinie definieren. Es gibt mehrere gut definierte System Folder Properties für MSIS, die Sie verwenden können, um Ihre Standardverzeichnisstruktur zu definieren.

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="ProgramFilesFolder"> 
     <Directory Id="INSTALLDIR" Name="CompanyName">     
      <Directory Id="BIN" Name="_bin" />      
      <Directory Id="DataDir" Name="Data" /> 
     </Directory> 
    </Directory> 
    <Directory Id="AppDataFolder" > 
     <Directory Id="ProductName" /> 
    </Directory> 
    <Directory Id="ProgramMenuFolder"> 
     <Directory Id="ApplicationProgramsFolder" Name="ProductName"/> 
    </Directory> 
</Directory> 

Definieren Sie Ihre Standardstruktur auf diese Weise. Wenn Sie den Benutzer einen benutzerdefinierten Installationsspeicherort festlegen lassen, können Sie eine Registrierungssuche verwenden, um die Eigenschaft für das Verzeichnis festzulegen, und alles andere wird ordnungsgemäß aktualisiert. zum Beispiel wird eingestellt

<Property Id="INSTALLDIR"> 
    <RegistrySearch 
      Id="InstallDirRegSearch" 
      Root="HKLM" 
      Key="SOFTWARE\ProductName" 
      Name="Path" 
      Type="raw"/> 
</Property> 

Und die INSTALLDIR des benutzerdefinierten Ort und alle SIND und DataDir Ordner werden mit dem neuen INSTALLDIR Standort aktualisiert. Sie können eine ähnliche Registersuche ausführen, um Verzeichnisspeicherorte für alle anderen Verzeichnisse festzulegen. Der Vorteil dieser Vorgehensweise besteht darin, dass Sie, wenn diese Registrierungsspeicherorte nicht vorhanden sind, weiterhin die für Ihre Installation definierte Standardstruktur verwenden.

Verwandte Themen