<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SoftDeploy</title>
	<atom:link href="http://www.softdeploy.eu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.softdeploy.eu</link>
	<description>Software Setup and Deployment</description>
	<lastBuildDate>Thu, 26 Apr 2012 12:23:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Wise Package Studio 8.0 MR1</title>
		<link>http://www.softdeploy.eu/wise-package-studio/wise-package-studio-8-0-mr1/</link>
		<comments>http://www.softdeploy.eu/wise-package-studio/wise-package-studio-8-0-mr1/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 09:08:04 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Wise Package Studio]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=1977</guid>
		<description><![CDATA[Pojawiła się już wcześniej zapowiadana ostatnia wersja &#34;Wise Package Studio 8 MR1&#34; wraz ze wsparciem system&#243;w 64-bitowych. W przyszłości &#34;Wise Package Studio 8 MR1&#34; zostanie zastąpiony przez &#34;Flexera AdminStudio for Symantec&#34;. Migracja z &#34;Wise Package Studio 8&#34; do &#34;Flexera AdminStudio for  [...]]]></description>
			<content:encoded><![CDATA[<p>Pojawiła się już wcześniej zapowiadana ostatnia wersja &quot;Wise Package Studio 8 MR1&quot; wraz ze wsparciem system&oacute;w 64-bitowych. W przyszłości &quot;Wise Package Studio 8 MR1&quot; zostanie zastąpiony przez &quot;Flexera AdminStudio for Symantec&quot;. Migracja z &quot;Wise Package Studio 8&quot; do &quot;Flexera AdminStudio for Symantec&quot; będzie wspierana do 7 listopada 2012, po tym terminie &quot;Wise Package Studio 8&quot; będzie miał tylko częściowe wsparcie techniczne i 7 listopada 2013 osiągnie ostatecznie status Eof (End of live).&nbsp;</p>
<p><u>Co wprowadzono nowego w &quot;Wise Package Studio 8 MR1&quot;:</u></p>
<p>- pełne 64-bitowe wsparcie dla narzędzi &quot;Wise Script Package Editor&quot; oraz &quot;Wise Script Editor&quot;</p>
<p>- dodano nową zmienną &quot;%x64SYS32%&quot; pomocną przy&nbsp;wyszukiwaniu, odczytywaniu oraz uaktualnianiu plik&oacute;w w 64-bitowych systemach &#8211; zastosowanie w&nbsp;&quot;custom actions&quot; (&quot;Find file in path&quot; oraz &quot;Read-Update text file&quot;)</p>
<p>- dodano pełne 64-bitowe wsparcie do narzędzia &quot;SetupCapture&quot;</p>
<p>- dodano nowe role serwera oraz ustawienia zależności serwis&oacute;w. Na karcie &quot;System Requirements&quot; można teraz ustawić dodatkowe zależności dotyczące roli serwera lub serwis&oacute;w wymagane przy instalacji pakiet&oacute;w w systemach &quot;Windows Server 2008 R2 SP1&quot; oraz &quot;Windows 7 SP1&quot;</p>
<p>- uaktualniono &quot;listy wykluczeń&quot; (tzw. exclusion list &#8211; pliki &quot;wisepscc.ini&quot; oraz &quot;repackage.ini&quot;)&nbsp;dla plik&oacute;w oraz wpis&oacute;w rejestru powiązanych z Windows 7</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/wise-package-studio/wise-package-studio-8-0-mr1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Błąd MSI 2769</title>
		<link>http://www.softdeploy.eu/bledy-msi/blad-msi-2769/</link>
		<comments>http://www.softdeploy.eu/bledy-msi/blad-msi-2769/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 15:59:13 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Błędy-MSI]]></category>
		<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=1873</guid>
		<description><![CDATA[Błąd &#34;MSI 2769&#34; jest dość często spotykanym błędęm, występującym podczas instalacji, reperacji lub deinstalacji pakiet&#243;w wykonanych w &#34;Microsoft Visual Studio&#34; i bazujących na technologii &#34;.Net Framework&#34;. Elementami powodującymi powstawanie tego błędu są najczęściej błędnie napisane klasy lub  [...]]]></description>
			<content:encoded><![CDATA[<p>Błąd &quot;<em>MSI 2769</em>&quot; jest dość często spotykanym błędęm, występującym podczas instalacji, reperacji lub deinstalacji pakiet&oacute;w wykonanych w &quot;<em>Microsoft Visual Studio</em>&quot; i bazujących na technologii <em>&quot;.Net Framework&quot;.</em> Elementami powodującymi powstawanie tego błędu są najczęściej błędnie napisane klasy lub akcje (<em>&quot;Custom actions&quot;</em>).</p>
<p>W poniższym opisie posłużono się pakietem opartym na klasie&nbsp;<em>&quot;ProjectInstaller&quot;</em> oraz jej komponentach&nbsp;<em>&quot;ServiceProcessInstaller&quot;</em> i <em>&quot;ServiceInstaller&quot;</em>.</p>
<p>Instalacja oraz deinstalacjia pakietu przebiega bezproblemowo jednak podczas reperacji generowany jest&nbsp;<em>&quot;błąd 1001&quot;,</em> informujący o tym,&nbsp;że serwis jest już zainstalowany w systemie i nie wymaga ponownej instalacji.</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/11/2769_Blad_1001.jpg"><img alt="Błąd 1001 (MSI 2769)" class="size-medium wp-image-1883" height="111" src="http://www.softdeploy.eu/wp-content/uploads/2011/11/2769_Blad_1001-300x111.jpg" title="Błąd 1001 (MSI 2769)" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.1. Błąd reperacji<font class="Apple-style-span" color="#333333" face="Arial, sans-serif">&nbsp;pakietu</font></strong></span></p>
<p><em>&quot;Błąd 1001&quot;</em>&nbsp;ma swoje odzwierciedlenie w tabeli&nbsp;<em>&quot;Error&quot;</em>&nbsp;bazy danych pakietu-msi.</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaError.jpg"><img alt="Tabela &quot;Error&quot; w edytorze Orca" class="size-medium wp-image-1889" height="125" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaError-300x125.jpg" title="Tabela &quot;Error&quot; w edytorze Orca" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.2. Tabela &quot;Error&quot;&nbsp;<font class="Apple-style-span" color="#333333" face="Arial, sans-serif">w edytorze ORCA</font></strong></span></p>
<blockquote>
<p>Błędy o numeracji od 1000 do 1999 są błedami wewnętrznymi Windows Installera i są obsługiwane przez wpisy w tabeli &quot;Errors&quot;, natomiast o numeracji od 2500 do 3000 są błędami wywołania akcji (<em>&quot;Custom actions</em>&quot;) i bardzo często mają krytyczny wpływ na instalację pakietu.</p>
</blockquote>
<p>Wpis w tabeli <em>&quot;Errors&quot;</em> nie m&oacute;wi nam za wiele i aby znaleźć prawdziwe źr&oacute;dło odpowiedzialne za powstały błąd, należy zajrzeć do logu instalacyjnego (szukamy więc informacji o błędzie 1001).&nbsp;</p>
<blockquote>
<p>MSI (s) (80:FC) [14:14:45:888]: Generating random cookie.</p>
<p>MSI (s) (80:FC) [14:14:45:904]: Created Custom Action Server with PID 1288 (0&#215;508).</p>
<p>MSI (s) (80:F0) [14:14:45:966]: Running as a service.</p>
<p>MSI (s) (80:04) [14:14:45:966]: Hello, I&#39;m your 32bit Elevated custom action server.</p>
<p>MSI (s) (80:F4) [14:15:55:524]: Leaked MSIHANDLE (9) of type 790531 for thread 1660</p>
<p>MSI (s) (80:F4) [14:15:55:524]: Note: 1: 2769 2: _09A1EA63_58DC_4827_BFA4_44059F3467B0.install 3: 1&nbsp;</p>
<p>MSI (c) (B4:C8) [14:14:46:435]: Font created. &nbsp;Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg<strong>&nbsp;Fehler 1001. Error 1001</strong>. Der angegebene Dienst ist bereits vorhanden</p>
<p>DEBUG:&nbsp;<strong>Error 2769</strong>: &nbsp;<strong>Custom Action _09A1EA63_58DC_4827_BFA4_44059F3467B0.install</strong>did not close 1 MSIHANDLEs.</p>
<p><strong>Bei der Installation dieses Pakets ist ein unerwarteter Fehler aufgetreten. Es liegt eventuell ein das Paket betreffendes Problem vor. Der Fehlercode ist 2769. Argumente: _09A1EA63_58DC_4827_BFA4_44059F3467B0.install, 1,&nbsp;</strong></p>
<p>MSI (s) (80:98) [14:15:55:524]: User policy value &#39;DisableRollback&#39; is 0</p>
<p>MSI (s) (80:98) [14:15:55:524]: Machine policy value &#39;DisableRollback&#39; is 0</p>
<p>Aktion beendet um 14:15:55: InstallExecute. R&uuml;ckgabewert 3.</p>
</blockquote>
<p>Jak można zauważyć podczas reperacji produktu w logu instalacyjnym zapisywany jest błąd o numerze <em>&quot;2769&quot;, kt&oacute;rego źr&oacute;dłem jest&nbsp;</em>akcja &nbsp;<em>&quot;_09A1EA63_58DC_4827_BFA4_44059F3467B0.install&quot;</em></p>
<blockquote>
<p>DEBUG:&nbsp;<strong>Error 2769</strong>: &nbsp;<strong>Custom Action _09A1EA63_58DC_4827_BFA4_44059F3467B0.install</strong>did not close 1 MSIHANDLEs.</p>
</blockquote>
<p>Aby stwierdzić czy serwis jest instalowany w standardowy spos&oacute;b czy przy pomocy akcji (&quot;Custom actions&quot;) przechodzimy do tabel <em>&quot;ServiceInstall&quot;</em> i <em>&quot;ServiceControl&quot; i sprawdzamy ich zawartość. Obie tabele&nbsp;</em>są puste, co oznacza, że serwis jest instalowany przy pomocy akcji. W tabeli &quot;<em>CustomActions&quot; </em>znajdziemy&nbsp;wszystkie akcje odpowiedzialne za instalację /deinstalację serwisu (zaczynają sie od podkreślnika)</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaCustomAction.jpg"><img alt="Tabela &quot;CustomAction&quot;" class="size-medium wp-image-1897" height="135" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaCustomAction-300x135.jpg" title="Tabela &quot;CustomAction&quot;" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.3. Zawartość tabeli &quot;CustomAction&quot;</strong></span></p>
<p style="text-align: -webkit-auto;">Natomiast w tabeli&nbsp;<em>&quot;InstallExecuteSequence</em>&quot; znajdziemy sekwencje, kt&oacute;rym przypisane są kolejno poszczeg&oacute;lne akcje. Odszukujemy naszą&nbsp;<em>&quot;akcję&quot;</em> i sprawdzamy zawartość rekordu <em>&quot;Condition&quot;</em>: &nbsp;</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaInstallExecuteSequence.jpg"><img alt="Zawartość tabeli &quot;InstallExecuteSequence&quot;" class="size-medium wp-image-1913" height="134" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaInstallExecuteSequence-300x134.jpg" title="Zawartość tabeli &quot;InstallExecuteSequence&quot;" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.4. Zawartość tabeli &quot;InstallExecuteSequence&quot;</strong></span></p>
<p>Mamy tu następujący zapis <em>&quot;$C__A86DDC61F5864695A26A870927B7E6A3&gt;2&quot;, </em>z kt&oacute;rego wynika, że akcja jest wykonywana gdy, komponent &quot;<em>C__A86DDC61F5864695A26A870927B7E6A3&quot;</em> <em>($ wskazuje na komponent)</em>, zawierający plik <em>&quot;StartAppsEWX.exe</em>&quot;, jest dostępny w systemie lub uruchamiany bezpośrednio ze źr&oacute;dła instalacji <em>(wartość &gt; 2, oznacza, że może przyjmować stany 3 i 4).</em></p>
<p>Poniższa tabela zawiera możliwe stany dla komponent&oacute;w i &quot;ficzer&oacute;w&quot; stosowane przy definiowaniu kondycji.<span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: sans-serif; line-height: 16px; ">&nbsp;<strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; background-position: initial initial; background-repeat: initial initial; ">
<table id="wp-table-reloaded-id-8-no-1" class="wp-table-reloaded wp-table-reloaded-id-8">
<thead>
	<tr class="row-1 odd">
		<th class="column-1">Stan (State)</th><th class="column-2">Wartość (Value)</th><th class="column-3">Znaczenie (Meaning)</th>
	</tr>
</thead>
<tbody>
	<tr class="row-2 even">
		<td class="column-1">INSTALLSTATE_UNKNOWN</td><td class="column-2">-1</td><td class="column-3">Akcja nie będzie wykonywana  na komponencie lub "ficzerze".</td>
	</tr>
	<tr class="row-3 odd">
		<td class="column-1">INSTALLSTATE_ADVERTISED</td><td class="column-2">1</td><td class="column-3">Tylko w przypadku istnienia zaanonsowanych "ficzerów". Stan niedostępny dla komponentów.</td>
	</tr>
	<tr class="row-4 even">
		<td class="column-1">INSTALLSTATE_ABSENT</td><td class="column-2">2</td><td class="column-3">"Ficzer" lub komponent nie istnieje.</td>
	</tr>
	<tr class="row-5 odd">
		<td class="column-1">INSTALLSTATE_LOCAL</td><td class="column-2">3</td><td class="column-3">"Ficzer" lub komponent znajduje się na lokalnym komputerze.</td>
	</tr>
	<tr class="row-6 even">
		<td class="column-1">INSTALLSTATE_SOURCE</td><td class="column-2">4</td><td class="column-3">"Ficzer" lub komponent jest uruchamiany z plików źródłowych.</td>
	</tr>
</tbody>
</table>
</strong>&nbsp;</span></p>
<p><u>Rozwiązanie</u></p>
<p>1. Otwieramy pakiet do edycji w programie Orca i tworzymy transformację (menu &quot;Transform&quot; -&gt; &quot;New Transform&quot;)</p>
<p>2. Przechodzimy do tabeli &quot;CustomAction&quot; i usuwamy wszystkie akcje powiązane z naszym serwisem</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaCustomActionAfter.jpg"><img alt="Zawartość tabeli &quot;CustomAction&quot; po modyfikacjach" class="size-medium wp-image-1931" height="201" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaCustomActionAfter-300x201.jpg" title="Zawartość tabeli &quot;CustomAction&quot; po modyfikacjach" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.5. Zawartość tabeli &quot;CustomAction&quot; po modyfikacjach</strong></span></p>
<p>3. Analogicznie postępujemy w tabeli &quot;InstallExecuteSequence&quot;</p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaInstallExecuteSequenceAfter.jpg"><img alt="Zawartość tabeli &quot;InstallExecuteSequence&quot; po modyfikacjach" class="size-medium wp-image-1932" height="202" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_TabelaInstallExecuteSequenceAfter-300x202.jpg" title="Zawartość tabeli &quot;InstallExecuteSequence&quot; po modyfikacjach" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.6. Zawartość tabeli &quot;InstallExecuteSequence&quot; po modyfikacjach</strong></span></p>
<p>4. Następnie w tabeli &quot;ServiceInstall&quot; uzupełniamy następujace rekordy</p>
<p><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: sans-serif; line-height: 16px; "><strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; ">
<table id="wp-table-reloaded-id-9-no-1" class="wp-table-reloaded wp-table-reloaded-id-9">
<thead>
	<tr class="row-1 odd">
		<th class="column-1">Nazwa rekordu</th><th class="column-2">Wartość</th><th class="column-3">Opis</th>
	</tr>
</thead>
<tbody>
	<tr class="row-2 even">
		<td class="column-1">ServiceInstall</td><td class="column-2">App</td><td class="column-3">Główny klucz (Primary key) tabeli - dowolna nazwa </td>
	</tr>
	<tr class="row-3 odd">
		<td class="column-1">Name</td><td class="column-2">app</td><td class="column-3">Nazwa serwisu</td>
	</tr>
	<tr class="row-4 even">
		<td class="column-1">DisplayName</td><td class="column-2">App Client Service</td><td class="column-3">Nazwa serwisu używana do identyfikacji przez inne programy</td>
	</tr>
	<tr class="row-5 odd">
		<td class="column-1">ServiceType</td><td class="column-2">16</td><td class="column-3">Typ serwisu, wartość "16" oznacza 32-bitowy serwis, który jest uruchamiany we własnym procesie</td>
	</tr>
	<tr class="row-6 even">
		<td class="column-1">StartType</td><td class="column-2">2</td><td class="column-3">Flaga identyfikujaca w jaki sposób uruchamiany jest serwis. Wartość "2" oznacza, że serwis jest uruchamiany przy starcie systemu </td>
	</tr>
	<tr class="row-7 odd">
		<td class="column-1">ErrorControl</td><td class="column-2">1</td><td class="column-3">Określa sposób obsługi błędu, podczas uruchamiania serwisu. Wartość "1" oznacza , że informacja o napotkanym błądzie zapisywana jest do logu systemowego. Dodatkowo wyświetlany jest komunikat z treścią błędu i kontynuowana jest operacja uruchomienia serwisu. </td>
	</tr>
	<tr class="row-8 even">
		<td class="column-1">Component_</td><td class="column-2">C__A86DDC61F5864695A26A870927B7E6A3</td><td class="column-3">Wskaźnik do komponentu</td>
	</tr>
	<tr class="row-9 odd">
		<td class="column-1">Description</td><td class="column-2">App Service</td><td class="column-3">Opis serwisu</td>
	</tr>
</tbody>
</table>
</strong></span></p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_ServiceInstallAfter.jpg"><img alt="Zawartość tabeli &quot;ServiceInstall&quot; po modyfikacjach" class="size-medium wp-image-1933" height="114" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_ServiceInstallAfter-300x114.jpg" title="Zawartość tabeli &quot;ServiceInstall&quot; po modyfikacjach" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.7. Zawartość tabeli &quot;ServiceInstall&quot; po wprowadzeniu danych</strong></span></p>
<p>5. W tabeli &quot;ServiceControl&quot; uzupełniamy kolejno następujące rekordy</p>
<p><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: sans-serif; line-height: 16px; "><strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; ">
<table id="wp-table-reloaded-id-10-no-1" class="wp-table-reloaded wp-table-reloaded-id-10">
<thead>
	<tr class="row-1 odd">
		<th class="column-1">Nazwa rekordu</th><th class="column-2">Wartość</th><th class="column-3">Opis</th>
	</tr>
</thead>
<tbody>
	<tr class="row-2 even">
		<td class="column-1">ServiceControl</td><td class="column-2">app</td><td class="column-3">Główny klucz (Primary key) tabeli - dowolna nazwa</td>
	</tr>
	<tr class="row-3 odd">
		<td class="column-1">Name</td><td class="column-2">app</td><td class="column-3">Nazwa serwisu </td>
	</tr>
	<tr class="row-4 even">
		<td class="column-1">Event</td><td class="column-2">160</td><td class="column-3">Operacje wykonywane na serwisie podczas instalacji\deinstalacji produktu (wartość "160" oznacza, że serwis jest zatrzymywany i usuwany podczas deinstalacji)</td>
	</tr>
	<tr class="row-5 odd">
		<td class="column-1">Wait</td><td class="column-2">0</td><td class="column-3">Wartość "0" wymusza pause na instalatorze, aż do momentu kiedy SCM (Service Control Manager) powiadomi o tym, że serwis jest w stanie oczekiwania na kolejne instrukcje.</td>
	</tr>
	<tr class="row-6 even">
		<td class="column-1">Component_</td><td class="column-2">C__A86DDC61F5864695A26A870927B7E6A3</td><td class="column-3">Wskaźnik do komponentu</td>
	</tr>
</tbody>
</table>
</strong>&nbsp;</span></p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_ServiceControlAfter.jpg"><img alt="Zawartość tabeli &quot;ServiceControl&quot; po modyfikacjach" class="size-medium wp-image-1934" height="114" src="http://www.softdeploy.eu/wp-content/uploads/2011/12/2769_ServiceControlAfter-300x114.jpg" title="Zawartość tabeli &quot;ServiceControl&quot; po modyfikacjach" width="300" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.8. Zawartość tabeli &quot;ServiceConrol&quot; po wprowadzeniu danych</strong></span></p>
<p>6. Zapisujemy transformację (menu &quot;Transform&quot; -&gt; &quot;Generate Transform&#8230;&quot;)&nbsp; i testujemy instalację, reperację oraz deinstalację pakietu.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/bledy-msi/blad-msi-2769/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Koniec wsparcia dla &#8222;Wise Package Studio&#8221;</title>
		<link>http://www.softdeploy.eu/wise-package-studio/koniec-wise-package-studio/</link>
		<comments>http://www.softdeploy.eu/wise-package-studio/koniec-wise-package-studio/#comments</comments>
		<pubDate>Mon, 10 Oct 2011 07:42:55 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Wise Package Studio]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=1492</guid>
		<description><![CDATA[Na wczorajszej konferencji prasowej, kt&#243;ra odbyła się w Barcelonie Symantec ogłosił, koniec wsparcia dla &#34;Wise Package Studio&#34;. Oznacza to, że tak lubiany przez wielu produkt, kt&#243;ry i tak nie był już od dawna rozwijany po prostu przestanie istnieć. Firma Symantec podpisała porozumienie z Flexera  [...]]]></description>
			<content:encoded><![CDATA[<p>Na wczorajszej konferencji prasowej, kt&oacute;ra odbyła się w Barcelonie Symantec ogłosił, koniec wsparcia dla &quot;Wise Package Studio&quot;. Oznacza to, że tak lubiany przez wielu produkt, kt&oacute;ry i tak nie był już od dawna rozwijany po prostu przestanie istnieć. Firma Symantec podpisała porozumienie z Flexera Software na mocy, kt&oacute;rego &quot;Wise Package Studio&quot; będzie zastąpiony specjalną edycją &quot;Flexera Admin Studio for Symantec&quot;. Jedynym elementem ze starego &quot;Wise Package Studio&quot;, kt&oacute;ry zostanie wbudowany w specjalną wersję &quot;Flexera Admin Studio for Symantec&quot; jest &quot;Wise Script Editor&quot;. &nbsp;&quot;Flexera Admin Studio for Symantec&quot; będzie zawierał rozwiązania obu firm, w tym wsparcie dla aktualnych wersji Windows zar&oacute;wno 32 jak i 64-bitowych, AdminStudio Virtualization Pack a także dodatkowe moduły wspierające pakietowanie m.in. dla Microsoft (App-V), VMWare (ThinApp) i dla Citrixa (Xen App).</p>
<p>Wsparcie dla &quot;Wise Package Studio 8.0&quot; ma być kontynuowane porawdopodobnie tylko do końca 2011 roku. W tym czasie zostanie wypuszczony update, dodający 64-bitowe wsparcie dla &quot;WiseScript Editor&quot; i &quot;SetupCapture&quot;. Flexera zapowiedziała r&oacute;wnież dalszy rozw&oacute;j nowego produktu, kt&oacute;rym jest &nbsp;&quot;Flexera AdminStudio for Symantec&quot;.</p>
<p>Symantec zapowiedział r&oacute;wnież, że od 7 listopada 2011 wszystkie wersje &quot;Wise Package Studio&quot; i &quot;Wise Connector&quot; oraz wszystkie narzędzia oraz wersje językowe wchodzące w ich skład otrzymają status EOL (End of Life) i nie bedą wiecej wspierane.&nbsp;</p>
<p>Tak na marginesie jest to już kolejny produkt &quot;położony&quot; przez Symanteca, miejmy nadzieję, że ta nowa odswieżona wersja będzie r&oacute;wnież przyjazna w użytkowaniu ja było to w przypadku &quot;Wise Package Studio&quot;.&nbsp;</p>
<p>Gwoli przypomnienia, Wise Inc. został w 2003 roku wykupiony przez firmę Altiris, kt&oacute;ra to cztery lata p&oacute;żniej została kupiona przez Symanteca. W 2010 roku Symantec zaprzestał rozwoju i wsparcia dla &quot;Wise Installation System&quot;, narzędzia używanego przez programist&oacute;w do tworzenia proces&oacute;w instalacyjnych. &nbsp;</p>
<p>Całość zostanie r&oacute;wnież om&oacute;wiona na &quot;Packaging Event&quot;, kt&oacute;ry odbędzie się 13 października w Amsterdamie.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/wise-package-studio/koniec-wise-package-studio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Błąd &#8222;The procedure entry point GetProcessImageFileNameW could not be located in the dynamic link library PSAPI.DLL&#8221; podczas instalacji Oracle Client 10g</title>
		<link>http://www.softdeploy.eu/how-to/blad-the-procedure-entry-point-getprocessimagefilenamew-could-not-be-located-in-the-dynamic-link-library-psapi-dll-podczas-instalacji-oracle-client-10g/</link>
		<comments>http://www.softdeploy.eu/how-to/blad-the-procedure-entry-point-getprocessimagefilenamew-could-not-be-located-in-the-dynamic-link-library-psapi-dll-podczas-instalacji-oracle-client-10g/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 12:58:53 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=1449</guid>
		<description><![CDATA[Podczas instalacji Oracle Client 10g generowany jest błąd &#34;The procedure entry point GetProcessImageFileNameW could not be located in the dynamic link library PSAPI.DLL&#34;. Z komunikatu&#160;błędu wynika, że w pliku &#34;PSAPI.DLL&#34; nie może zostać odnaleziony &#34;entry point&#34; do procedury  [...]]]></description>
			<content:encoded><![CDATA[<p><span lang="EN-US" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;<br />
mso-ansi-language:EN-US">Podczas instalacji Oracle Client 10g generowany jest błąd <span style="color:#333333">&quot;The procedure entry point GetProcessImageFileNameW could not be located in the dynamic link library PSAPI.DLL&quot;. Z komunikatu</span></span><span lang="PL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;color:#333333;mso-ansi-language:<br />
PL">&nbsp;błędu wynika, że w pliku &quot;PSAPI.DLL&quot; nie może zostać odnaleziony &quot;entry point&quot; do procedury &bdquo;GetProcessImageFileNameW&rdquo;. Błąd ten jest bardzo uciążliwy, ponieważ uniemożliwia przeprowadzenie automatycznej instalacji produktu przy pomocy pliku odpowiedzi &quot;.rsp&quot;. Bardzo ciekawą rzeczą jest r&oacute;wnież to, że pod Windows XP błąd ten występuje sporadycznie a pod Windows 7 zawsze.&nbsp;</span></p>
<p class="MsoNormal" style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/10/Blad_PSAPI_DLL.jpg"><img alt="Oracle błąd PSAPI.DLL" class="aligncenter size-full wp-image-1453" height="171" src="http://www.softdeploy.eu/wp-content/uploads/2011/10/Blad_PSAPI_DLL.jpg" title="Oracle błąd PSAPI.DLL" width="489" /></a></p>
<p class="MsoNormal" style="text-align: center; "><span style="font-size:10px;"><strong>Rys.1. Błąd&nbsp;<span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Arial, sans-serif; ">&quot;The procedure entry point GetProcessImageFileNameW could not be located in the dynamic link library PSAPI.DLL&quot;</span></strong></span></p>
<p class="MsoNormal">Biblioteka dynamiczna &quot;PSAPI.DLL&quot; jest częścia składową sytem&oacute;w Windows (&quot;%WinDir%\System32&quot;). Podczas instalacji Oracle, nie jest jednak wykorzystywana, gdyż instalator Oracle korzysta z własnej, kt&oacute;ra jest kopiowana do tymczasowej lokalizacji. Po wystartowaniu &quot;setup.exe&quot; część instalacji jest wypakowywana pod &nbsp;&bdquo;%LOCALAPPDATA%\Temp\OraInstall2011-08-05_12-51-28PM&rdquo;. Nazwa katalogu jest generowana automatycznie i zależna od dnia i godziny instalacji. Plik &quot;PSAPI.DLL&quot; wykorzystywany podczas instalacji jest w wersji &quot;5.0.1849.1&quot;, co stanowi sporą r&oacute;żnicę z dostępnym lokalnie.</p>
<p class="MsoNormal" style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/10/Stara_Wersja_PSAPIDLL.jpg"><img alt="Stara wersja PSAPI.DLL" border="2" class="aligncenter size-full wp-image-1454" height="55" src="http://www.softdeploy.eu/wp-content/uploads/2011/10/Stara_Wersja_PSAPIDLL.jpg" title="Stara wersja PSAPI.DLL" width="311" /></a></p>
<p class="MsoNormal" style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.2. Wersja pliku &quot;</strong></span><span class="Apple-style-span" style="font-size: 10px; "><strong>PSAPI.DLL&quot;&nbsp;</strong></span><span class="Apple-style-span" style="font-size: 10px; "><strong>wykorzystywana przez instalator Oracle</strong></span></p>
<p class="MsoNormal">Plik &quot;PSAPI.DLL&quot; wchodzący w skład Windows 7 (&quot;%WinDir%\System32&quot;) &#8211; 6.1.7600.16385 (wersja zależna od zainstalowanych poprawek).&nbsp;</p>
<p class="MsoNormal" style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/10/Nowa_Wersja_PSAPIDLL.jpg"><img alt="Nowa wersja PSAPI.DLL" border="2" class="aligncenter size-full wp-image-1455" height="55" src="http://www.softdeploy.eu/wp-content/uploads/2011/10/Nowa_Wersja_PSAPIDLL.jpg" title="Nowa wersja PSAPI.DLL" width="311" /></a></p>
<p class="MsoNormal" style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.3. Wersja pliku &quot;</strong></span><span class="Apple-style-span" style="font-size: 10px; "><strong>PSAPI.DLL&quot;&nbsp;</strong></span><span class="Apple-style-span" style="font-size: 10px; "><strong>wchodząca w skład Windows 7</strong></span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-family: Arial, sans-serif; ">Jak można tu zauważyć, jest to problem z niekompatybilnoścą wersji biblioteki dynamicznej &quot;PSAPI.DLL&quot;. Najprostszym rozwiązaniem byłoby nadpisanie jej podczas instalacji produktu. Jest to niestety niemożliwe, gdyż plik ten jest odrazu wypakowywany do tymczasowego katalogu i każdy plik już tam istniejący jest przez niego nadpisywany. Drugim problemem jest to, że zaraz po wypakowaniu plik ten jest w użyciu przez co niemożliwe jest jego nadpisanie. </span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-family: Arial, sans-serif; ">Jedynym rozsądnym rozwiązaniem jest tu podminienie go w plikach źr&oacute;dłowych instalatora. Plik &quot;PSAPI.DLL&quot; znajduje się w postaci skompresowanej w pliku &quot;RunningProcessQuery.jar&quot; w katalogu &quot;.\Client\stage\Queries\RunningProcessQuery\1.5.2\1&quot; instalatora. Jako że plik &quot;.jar&quot; jest archiwem &quot;.zip&quot;, możliwe jest podmienienie go w pliku źr&oacute;dłowym. Możemy to wykonać np. przy użyciu darmowego archiwizera &quot;7zip&quot;. Wykonamy to w następujący spos&oacute;b:</span></p>
<ul>
<li><span class="Apple-style-span" style="font-family: Arial, sans-serif; ">kopiujemy plik &quot;RunningProcessQuery.jar&quot; do dowolnej lokalizacji, gdzie otwieramy go przy pomocy &quot;7zip&quot;</span></li>
</ul>
<ul>
<li>
<p class="MsoNormal"><span lang="PL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;<br />
mso-ansi-language:PL">następnie przechodzimy do katalogu &quot;.\lib\win32\&quot; i podmieniamy go nowszą wersją</span></p>
</li>
</ul>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2011/10/Plik_po_wymianie_7Zip.jpg"><img alt="Plik &quot;PSAPI.DLL&quot; po wymianie pod &quot;7zip&quot;" class="aligncenter size-medium wp-image-1470" height="96" src="http://www.softdeploy.eu/wp-content/uploads/2011/10/Plik_po_wymianie_7Zip-300x96.jpg" title="Plik &quot;PSAPI.DLL&quot; po wymianie pod &quot;7zip&quot;" width="300" /></a></p>
<p class="MsoNormal" style="text-align: center; "><span class="Apple-style-span" style="font-size: 10px; "><strong>Rys.4. Podmieniona bilioteka dynamiczna &quot;PSAPI.dll&quot;</strong></span></p>
<ul>
<li>
<p class="MsoNormal"><span lang="PL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;<br />
mso-ansi-language:PL">zamykamy &quot;7zip&quot; (automatycznie zapisuje zmiany) i kopiujemy tak zmodyfikowany plik &quot;.jar&quot; ponownie do katalogu &quot;.\Client\stage\Queries\RunningProcessQuery\1.5.2\1&quot;</span></p>
</li>
<li>
<p class="MsoNormal"><span lang="PL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;<br />
mso-ansi-language:PL">uruchamiamy ponownie ręcznie instalację i sprawdzamy jej poprawność. Jeśli instalacja przebiegła poprawnie, możemy ją przetestować już w trybie automatycznym wraz z plikiem odpowiedzi .rsp.&nbsp;</span></p>
</li>
</ul>
<p class="MsoNormal"><span lang="PL" style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;mso-ansi-language:PL"><o:p></o:p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/how-to/blad-the-procedure-entry-point-getprocessimagefilenamew-could-not-be-located-in-the-dynamic-link-library-psapi-dll-podczas-instalacji-oracle-client-10g/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 8 Developer Preview do pobrania z MSDN</title>
		<link>http://www.softdeploy.eu/windows-8/windows-8-developer-preview-do-pobrania-z-msdn/</link>
		<comments>http://www.softdeploy.eu/windows-8/windows-8-developer-preview-do-pobrania-z-msdn/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 08:24:51 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Windows 8]]></category>
		<category><![CDATA[Windows Client]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=1166</guid>
		<description><![CDATA[Od pewnego czasu na stronie Windows Dev Center jest dostępny do ściągnięcia Windows 8 Developer Preview
Windows Developer Preview with developer tools English, 64-bit (x64) -&#160;DOWNLOAD (4.8 GB)

64-bit Windows Developer Preview
Windows SDK for Metro style apps
Microsoft Visual Studio 11 Express for  [...]]]></description>
			<content:encoded><![CDATA[<p>Od pewnego czasu na stronie <a href="http://msdn.microsoft.com/en-us/windows/home/">Windows Dev Center</a> jest dostępny do ściągnięcia Windows 8 Developer Preview</p>
<p>Windows Developer Preview with developer tools English, 64-bit (x64) -&nbsp;<strong><a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-64bit-English-Developer.iso">DOWNLOAD</a> (4.8 GB)</strong></p>
<ul>
<li>64-bit Windows Developer Preview</li>
<li>Windows SDK for Metro style apps</li>
<li>Microsoft Visual Studio 11 Express for Windows Developer Preview</li>
<li>Microsoft Expression Blend 5 Developer Preview</li>
<li>28 Metro style apps including the BUILD Conference app</li>
</ul>
<p>&nbsp;</p>
<p>Windows Developer Preview English, 64-bit (x64) -<strong>&nbsp;<a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-64bit-English.iso">DOWNLOAD</a> (3.6 GB)</strong></p>
<ul>
<li>Includes a disk image file (.iso) to install the Windows Developer Preview and Metro style apps on a 64-bit PC.</li>
</ul>
<p>&nbsp;</p>
<p>Windows Developer Preview English, 32-bit (x86) -&nbsp;<a href="http://wdp.dlws.microsoft.com/WDPDL/9B8DFDFF736C5B1DBF956B89D8A9D4FD925DACD2/WindowsDeveloperPreview-32bit-English.iso"><strong>DOWNLOAD</strong></a> <strong>(2.8 GB)</strong></p>
<ul>
<li>Includes a disk image file (.iso) to install the Windows Developer Preview and Metro style apps on a 32-bit PC.</li>
</ul>
<p>&nbsp;</p>
<blockquote>
<p>Wymagania systemowe:</p>
<p>&nbsp;</p>
<ul>
<li>1 gigahertz (GHz) or faster 32-bit (x86) or 64-bit (x64) processor</li>
<li>1 gigabyte (GB) RAM (32-bit) or 2 GB RAM (64-bit)</li>
<li>16 GB available hard disk space (32-bit) or 20 GB (64-bit)</li>
<li>DirectX 9 graphics device with WDDM 1.0 or higher driver</li>
<li>Taking advantage of touch input requires a screen that supports multi-touch</li>
<li>To run Metro style Apps, you need a screen resolution of 1024 X 768 or greater</li>
</ul>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/windows-8/windows-8-developer-preview-do-pobrania-z-msdn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transformacja (.mst) może nadpisać wpisy rejestru uaktualnione przez plik (.msp) podczas instalacji typu (.msi + .mst + .msp)</title>
		<link>http://www.softdeploy.eu/how-to/transformacja-mst-moze-nadpisac-wpisy-rejestru-uaktualnione-przez-plik-msp-podczas-instalacji-typu-msi-mst-msp/</link>
		<comments>http://www.softdeploy.eu/how-to/transformacja-mst-moze-nadpisac-wpisy-rejestru-uaktualnione-przez-plik-msp-podczas-instalacji-typu-msi-mst-msp/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 09:59:38 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[Windows Installer]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=662</guid>
		<description><![CDATA[Plik aktualizacyjny typu &#34;patch&#34;&#160;(.msp) może, niepoprawnie uaktualnić wpisy w rejestrze w przypadku, gdy gł&#243;wny produkt jest instalowany wraz z plikiem transformacji (.mst). Jest to związane z kolejnością wykonywania poszczeg&#243;lnych zadań przez usługę &#34;Windows Installera&#34;. Tranasformacja  [...]]]></description>
			<content:encoded><![CDATA[<p>Plik aktualizacyjny typu &quot;patch&quot;&nbsp;(.msp) może, niepoprawnie uaktualnić wpisy w rejestrze w przypadku, gdy gł&oacute;wny produkt jest instalowany wraz z plikiem transformacji (.mst). Jest to związane z kolejnością wykonywania poszczeg&oacute;lnych zadań przez usługę &quot;Windows Installera&quot;. Tranasformacja (.mst)&nbsp;instalowana wraz z gł&oacute;wnym produktem (.msi), jest zawsze&nbsp;dodawana&nbsp;w końcowej fazie&nbsp;procesu instalacji.&nbsp;W wyniku tej przypadłości, wpisy w rejestrze zaktualizowane przez plik&nbsp;(.msp), są&nbsp;ponownie nadpisywane przez&nbsp;plik&nbsp;transformacji (.mst).</p>
<p><u>Przykład:</u></p>
<blockquote>
<p><em>msiexec /i &lt;plik.msi&gt; TRANSFORMS=&lt;plik.mst&gt; PATCH=&lt;plik.msp&gt;</em></p>
</blockquote>
<p>Przy instalacji typu <em>&quot;.msi + .mst + .msp</em>&quot; nie można używać przełącznika<em><strong> &quot;/i&quot;</strong></em> razem z <em><strong>&quot;/p</strong></em><strong>&quot;</strong>. Należy go zastąpić przez &quot;property&quot; <strong><em>PATCH</em></strong><em>.</em></p>
<p>&nbsp;</p>
<p>Przykładowe scenariusze instalacji oraz kolejność modyfikowania wpis&oacute;w rejestru:</p>
<p>&nbsp;</p>
<p><strong><u>1. Instalacji typu .msi</u></strong></p>
<p>Podczas instalacji (plik .msi) do rejestru zapisywane są tylko wpisy z tabeli <em>&quot;Registry&quot;</em> pliku (.msi).</p>
<p>&nbsp;</p>
<p><strong><u>2. Instalacja typu .msi + .mst</u></strong></p>
<p>Podczas instalacji wpisy rejestru są modyfikowane przez wpisy z tabeli <em>&quot;Registry</em>&quot; pliku transformacji (.mst).</p>
<p>&nbsp;</p>
<p><strong><u>3. Instalacja typu .msi + .mst + .msp</u></strong></p>
<p>Podczas instalacji wpisy rejestru, kt&oacute;re miały być zmienione przez plik aktualizacji (.msp), są nadpisywane przez zawartość tabeli <em>&quot;Registry</em>&quot; pliku transformacji (.mst ).</p>
<p>&nbsp;</p>
<p><strong><u>Rozwiązanie:</u></strong></p>
<p>Problem nadpisywania wartości rejestru można &nbsp;rozwiązać na dwa sposoby. Pierwszy z nich polega na aktualizacji gł&oacute;wnego pliku (.msi) przy pomocy pliku (.msp) i p&oacute;źniejszym dopasowaniu transformacji, tak aby wpisy w rejestrze miały poprawne wartości.</p>
<blockquote>
<p><span class="Apple-style-span" style="line-height: 19px; font-style: italic; font-family: 'segoe ui', calibri, 'myriad pro', myriad, 'trebuchet ms', helvetica, arial, sans-serif; color: rgb(71,71,71); font-size: 13px"><em style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: 'segoe ui', calibri, 'myriad pro', myriad, 'trebuchet ms', helvetica, arial, sans-serif; padding-top: 0px">msiexec /a &lt;plik.msi&gt; /p &lt;plik.msp&gt;</em></span></p>
</blockquote>
<p>Drugi spos&oacute;b polega na utworzeniu pliku aktualizacyjnego (.msp) zawierającego r&oacute;wnież elementy pliku transformacji (.mst). W efekcie końcowym gł&oacute;wny plik instalacjny (.msi) instalowany jest tylko z plikiem aktualizacyjnym (.msp).</p>
<blockquote>
<p><span class="Apple-style-span" style="line-height: 19px; font-style: italic; font-family: 'segoe ui', calibri, 'myriad pro', myriad, 'trebuchet ms', helvetica, arial, sans-serif; color: rgb(71,71,71); font-size: 13px"><em style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: 'segoe ui', calibri, 'myriad pro', myriad, 'trebuchet ms', helvetica, arial, sans-serif; padding-top: 0px">msiexec /i &lt;plik.msi&gt; PATCH=&lt;plik.msp&gt;</em></span></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/how-to/transformacja-mst-moze-nadpisac-wpisy-rejestru-uaktualnione-przez-plik-msp-podczas-instalacji-typu-msi-mst-msp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Użycie &#8222;unwise.exe&#8221; i &#8222;unwise32.exe&#8221; przy automatycznej deinstalacji oprogramowania</title>
		<link>http://www.softdeploy.eu/how-to/uzycie-unwise-exe-i-unwise32-exe-przy-automatycznej-deinstalacji-oprogramowania/</link>
		<comments>http://www.softdeploy.eu/how-to/uzycie-unwise-exe-i-unwise32-exe-przy-automatycznej-deinstalacji-oprogramowania/#comments</comments>
		<pubDate>Thu, 11 Nov 2010 14:55:21 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=624</guid>
		<description><![CDATA[Pliki &#34;unwise.exe&#34; lub &#34;unwise32.exe&#34; &#160;(tzw. deinstalatory) są elementami pakietu wykonanego w &#34;WiseScript&#34;. Instalatory oprogramowania wykonane w tym języku mają zazwyczaj rozszerzenie typu &#34;.exe&#34; i są w pełni dostosowane do automatycznej instalacji bez interakcji ze strony użytkownika. Podczas  [...]]]></description>
			<content:encoded><![CDATA[<p>Pliki <em>&quot;unwise.exe</em>&quot; lub <em>&quot;unwise32.exe</em>&quot; &nbsp;(tzw. deinstalatory) są elementami pakietu wykonanego w <em>&quot;WiseScript</em>&quot;. Instalatory oprogramowania wykonane w tym języku mają zazwyczaj rozszerzenie typu<em> &quot;.exe</em>&quot; i są w pełni dostosowane do automatycznej instalacji bez interakcji ze strony użytkownika. Podczas instalacji pliki <em>&quot;unwise.exe</em>&quot; lub <em>&quot;unwise32.exe</em>&quot; kopiowane są do katalogu instalacyjnego aplikacji lub do katalogu Windows. W trakcie tego procesu tworzony jest plik <em>&quot;INSTALL.LOG</em>&quot; zawierający całą logikę instalacji. W celu odinstalowania pakietu w trybie ukrytym i automatycznym musimy skorzystać z następującej komendy.</p>
<blockquote>
<p><em><strong>&quot;&lt;ścieżka_do_katalogu&gt;\unwise.exe&quot; /S /A &quot;&lt;ścieżka_do_katalogu&gt;\INSTALL.LOG&quot;</strong></em></p>
</blockquote>
<p>lub</p>
<blockquote>
<p><em><strong>&quot;&lt;ścieżka_do_katalogu&gt;\unwise32.exe&quot; /S /A &quot;&lt;ścieżka_do_katalogu&gt;\INSTALL.LOG&quot;</strong></em></p>
</blockquote>
<p><span style="text-decoration: underline;">przykład: </span></p>
<blockquote>
<p><em><strong>&quot;%ProgramFiles%\Test\unwise.exe&quot; /S /A &quot;%ProgramFiles%\Test\INSTALL.LOG&quot; </strong></em></p>
</blockquote>
<p>W powyższym przykładzie wykonana została automatyczna (przełącznik <em>/A</em>) i ukryta (przełącznik<em> /S</em>) deinstalacja oprogramowania w oparciu o plik <em>&quot;INSTALL.LOG&quot;. </em> Deinstalator<em> &quot;unwise.exe\unwise32.exe</em>&quot; posiada r&oacute;wnież szereg innych ciekawych opcji, kt&oacute;re zostały opisane poniżej:</p>
<blockquote>
<p><em><strong>/A</strong> &#8211; &nbsp;tryb automatyczny (automatic mode) wraz z graficznym interfejsem. Użytkownik nie musi wykonywać dodatkowych czynności, całość przebiega automatycznie. Wyjatkiem jest tu deinstalacja wsp&oacute;łdzielonych plik&oacute;w (np. plik&oacute;w dll znajdujących się w katalogu &quot;%WinDir%\System32&quot;), podczas kt&oacute;rej użytkownik jest proszony o wskazanie czy plik ma być odinstalowany czy nie.</em></p>
<p><em><strong>/R</strong> &#8211; &nbsp;tryb powrotu instalacji do punktu startowego (rollback mode).</em></p>
<p><em><strong>/S</strong> &#8211; &nbsp;tryb cichy (silent mode). Deinstalacja pakietu przebiega całkowicie w tle, bez interfejsu graficznego oraz komunikat&oacute;w wymagających interakcji ze strony użytkownika.</em></p>
<p><em><strong>/U</strong> &#8211; &nbsp;usuwa okno z możliwością wyboru metody deinstalacji pakietu (&quot;Custom&quot;, &quot;Automatic&quot;, &quot;Repair&quot;).</em></p>
<p><strong><em><span style="font-style: normal; font-weight: normal;"><em><strong>/Z</strong> &#8211; &nbsp;usuwa puste katalogi, r&oacute;wnież ten w k&oacute;rym się aktualnie znajduje.</em></span></em></strong></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/how-to/uzycie-unwise-exe-i-unwise32-exe-przy-automatycznej-deinstalacji-oprogramowania/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Błąd MSI 1334 i 2602 przy aktualizacji plików instalacyjnych Adobe Acrobat Professional 9.0 do wersji 9.3.4</title>
		<link>http://www.softdeploy.eu/bledy-msi/blad-msi-1334-i-2602-przy-aktualizacji-plikow-instalacyjnych-adobe-acrobat-professional-9-0-do-wersji-9-3-4/</link>
		<comments>http://www.softdeploy.eu/bledy-msi/blad-msi-1334-i-2602-przy-aktualizacji-plikow-instalacyjnych-adobe-acrobat-professional-9-0-do-wersji-9-3-4/#comments</comments>
		<pubDate>Wed, 13 Oct 2010 12:12:46 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Błędy-MSI]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[Windows Installer]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=560</guid>
		<description><![CDATA[Kilka dni temu aktualizując &#34;Adobe Acrobat Professional&#34; z wersji 9.0 do aktualnej oznaczonej numerem 9.3.4 napotkałem na dwa bardzo ciekawe błędy &#34;MSI&#34;. Poniżej zaprezentuje metodę obejścia tego problemu jak i bezpośrednią aktualizację plik&#243;w instalacyjnych pakietu (tzw. &#34;slipstreamed  [...]]]></description>
			<content:encoded><![CDATA[<p>Kilka dni temu aktualizując &quot;Adobe Acrobat Professional&quot; z wersji 9.0 do aktualnej oznaczonej numerem 9.3.4 napotkałem na dwa bardzo ciekawe błędy <em>&quot;MSI&quot;</em>. Poniżej zaprezentuje metodę obejścia tego problemu jak i bezpośrednią aktualizację plik&oacute;w instalacyjnych pakietu (tzw. <em>&quot;slipstreamed installation&quot;</em>). W celu wykonania aktualizacji, należy z płyty CD&nbsp;wyodrębnić pliki instalatora (katalog <em>&quot;Adobe Acrobat 9 Pro&quot;</em>)&nbsp;i skopiować je do przykładowego katalogu (np. do <em>&quot;d:\Acro&quot;</em>). Następnie ściągnąć wszystkie możliwe pliki aktualizacyjne skojarzone z &nbsp;naszą wersją <em>&quot;Adobe Acrobat&quot;</em>. Przy aktualizacji należy pamietać o kolejności, czyli na początku należy zacząć od aktualizacji oznaczonej numerem <em>&quot;9.1&quot;</em>, następnie <em>&quot;9.1.1, 9.1.2, 9.1.3, 9.2.0, 9.3.0, 9.3.1, 9.3.2, 9.3.3&quot;</em> a zakończyć na numerze <em>&quot;9.3.4&quot;</em>. W celu wykonania pierwszej aktualizacji z wersji <em>&quot;9.0&quot;</em> do wersji <em>&quot;9.1&quot; należy</em>&nbsp;użyć następującej komendy:</p>
<blockquote>
<p><em>msiexec /a &lt;ścieka_do_pliku\plik.msi&gt; /p &lt;ścieżka_do_pliku\plik.msp&gt;</em></p>
</blockquote>
<p>w naszym przypadku komenda będzie miała następującą postać:</p>
<blockquote>
<p><em>msiexec /a d:\Acro\AcroPro.msi /p d:\Update\AcroProStdUpd910_T1T2_incr.msp</em></p>
</blockquote>
<div>Podczas procesu aktualizacji część plik&oacute;w znajdujących się w &quot;<em>Data1.cab&quot;</em> jest rozpakowywana do katalogu<em> &quot;d:\Acro&quot;</em> . Pliki te mają postać nieskompresowaną (tzw. <em>&quot;external uncompressed files&quot;</em>).&nbsp;Aktualizacja z wersji <em>&quot;9.0&quot;</em> do wersji <em>&quot;9.1&quot;</em> powinna przebiec bezproblemowo, natomiast z wersji <em>&quot;9.1&quot;</em> do <em>&quot;9.1.1&quot;</em>&nbsp;może zakończyć się błędem <em>&quot;MSI 1334&quot;</em>, uniemożliwiającym dalsze aktualizowanie produktu.</div>
<p><span style="text-decoration: underline;">Komunikat błędu:</span></p>
<blockquote>
<p><em><strong>Product: Adobe Acrobat 9 Pro &#8211; English, Fran&ccedil;ais, Deutsch &#8212; Error 1334.The file &#39;interop.adobepdfmakerx.dll&#39; cannot be installed because the file cannot be found in cabinet file &#39;Data1.cab&#39;. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package.</strong></em></p>
<p><em>Product: Adobe Acrobat 9 Pro &#8211; English, Fran&ccedil;ais, Deutsch &#8212; Błąd 1334.Plik &#39;interop.adobepdfmakerx.dll&#39; nie może być zainstalowany, ponieważ nie ma go w pliku &#39;Data1.cab&#39;. Może to wskazywać na problem z połączniem sieciowym, błąd odczytu z CD-ROM, lub jakiś inny problem z tym pakietem.</em></p>
</blockquote>
<div style="text-align: center;"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_00.jpg"><img alt="Błąd MSI &quot;1334&quot;" class="aligncenter size-full wp-image-585" height="224" src="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_00.jpg" title="Błąd MSI 1334" width="433" /></a></div>
<div style="text-align: center;">&nbsp;</div>
<div style="text-align: center;"><span style="font-size: 11px;"><em>Błąd MSI 1334</em></span></div>
<p>Z komunikatu błędu wynika, że podczs procesu aktualizacji plik&oacute;w instalacyjnych nie wszystkie są poprawmie wypakowywane z pliku Data1.cab. Aby zapobiec dalszemu pojawianiu się tego komunikatu, należy wypakować oryginalną instalację do postaci zewnętrznych nieskomprensowanych plik&oacute;w (tzw. <em>&quot;external uncompressed files&quot;</em>) i ponownie przystąpić do aktualizacji. Wykonamy to przy pomocy poniższego polecenia:</p>
<blockquote>
<p><em>msiexec /a &lt;ścieka_do_pliku\plik.msi&gt;</em></p>
</blockquote>
<p>w naszym przypadku komenda będzie miała następującą postać:</p>
<blockquote>
<p><em>msiexec /a d:\Acro\AcroPro.msi</em></p>
</blockquote>
<p>Podczas wypakowywania plik&oacute;w instalacyjnych zostaniemy poproszeni o wskazanie miejsca docelowego, gdzie zostaną one zapisane (np. do katalogu <em>&quot;d:\AcroUpd&quot;)</em>. Jak można łatwo zauważyć, do katalogu <em>&quot;d:\AcroUpd&quot;</em> kopiowane są pliki z pominiecięm&nbsp;<em>&quot;Data1.cab&quot;</em>, gdyż właśnie z niego są wypakowywane.</p>
<p>Po prawidłowym wypakowaniu plik&oacute;w możemy ponownie przystapić do procesu aktualizacji. Przy aktualizacji z wersji 9.1.1 do wersji 9.1.2 możemy napotkać na kolejny błąd <em>&quot;MSI&quot;</em> o numerze <em>&quot;2602&quot;</em>. Proces aktualizacji zostanie w tym momencie przerwany.</p>
<p><span style="text-decoration: underline;">Komunikat błędu:</span></p>
<blockquote>
<p><em><strong>Product: Adobe Acrobat 9 Pro &#8211; English, Fran&ccedil;ais, Deutsch &#8212; Error 2602.The File table entry &#39;Annots.api_911&#39; has no associated entry in the Media table.</strong></em></p>
<p><em>Product: Adobe Acrobat 9 Pro &#8211; English, Fran&ccedil;ais, Deutsch &#8212; Błąd 2602. Wpis &#39;Annots.api_911&#39; w tabeli &quot;Files&quot; nie ma poprawnego powiązania z wpisem z tabeli &quot;Media&quot;.</em></p>
</blockquote>
<p style="text-align: center;"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_02.jpg"><img alt="Błąd MSI &quot;2602&quot;" class="aligncenter size-full wp-image-587" height="224" src="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_02.jpg" title="Błąd MSI 2602" width="433" /></a></p>
<p style="text-align: center;"><span style="font-size: 11px;"><em>Błąd MSI 2602</em></span></p>
<p>Z informacji zawartych w komunikacie błędu wynika,że instalator napotkał na nieprawidłowe wpisy w tabelach &quot;File&quot; i &quot;Media&quot;. Aby sprawdzić poprawność wpis&oacute;w w obu wspomnianych wcześniej tabelach, należy w pierwszej kolejności użyć edytora &quot;Orca<em>&quot;</em>&nbsp;i otworzyć w nim plik <em>&quot;AcroPro.msi</em>&quot;. Następnie przechodzimy do tabeli <em>&quot;Files&quot;</em> i sprawdzamy numer sekwencyjny (kolumna <em>&quot;Sequence</em>&quot;) pliku <em>&quot;Annots.api_911</em>&quot;. Jest nim <em>&quot;25000&quot;</em>. W kolejnym kroku przechodzimy do tabeli <em>&quot;Media&quot;</em> i sprawdzamyw kolumnie <em>&quot;LastSequence&quot;</em>&nbsp;poprawność numeru sekwencyjnego. Numer ten powinien wskazywać na ostatni numer sekwencyjny w tabeli <em>&quot;Files&quot;</em> czyli na 25000. Numer naszego pliku powinien znajdować się w podanym wcześniej zakresie (od 1 do 25000).</p>
<p style="text-align: center;"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_03.jpg"><img alt="Edytor Orca - tabela &quot;Files&quot;" class="aligncenter size-full wp-image-588" height="347" src="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_03.jpg" title="Edytor Orca tabela Files" width="600" /></a></p>
<p style="text-align: center;"><span style="font-size: small;"><span style="font-size: 11px;"><em>Edytor Orca &#8211; umiejscowienie pliku &quot;Annots.api_911&quot; w tabeli &quot;Files&quot;</em></span></span></p>
<p style="text-align: center;"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_04.jpg"><img alt="Edytor Orca - tabela &quot;Media&quot;" class="aligncenter size-full wp-image-589" height="347" src="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_04.jpg" title="Edytor Orca tabela Media" width="600" /></a></p>
<p style="text-align: center;"><span style="font-size: small;"><span style="font-size: 11px;"><em>Edytor Orca &#8211; maksymalny numer sekwencyjny w tabeli</em></span></span><span class="Apple-style-span" style="font-size: 11px; "><em>&nbsp;&quot;Media&quot;</em></span></p>
<p>W celu sprawdzenia poprawności kolejnej aktualizacji o numerze <em>&quot;9.1.2&quot;</em> w edytorze&nbsp;<em>&quot;Orca&quot;</em>&nbsp;przechodzimy do menu&nbsp;<em>&quot;Transform&quot;</em>&nbsp;&nbsp;i przy pomocy polecenia&nbsp;<em>&quot;View Patch&#8230;&quot;</em>&nbsp;&nbsp;wybieramy ją do podglądu<em>&nbsp;(plik &quot;AcrobatUpd912_all_incr.msp&quot;).</em></p>
<p style="text-align: center; "><a href="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_05.jpg"><img alt="Edytor Orca - tabela &quot;Media&quot; z updatem 9.1.2" class="aligncenter size-full wp-image-590" height="347" src="http://www.softdeploy.eu/wp-content/uploads/2010/10/Blad1334_05.jpg" title="Edytor Orca tabela Media" width="600" /></a></p>
<p style="text-align: center; "><span class="Apple-style-span" style="font-size: 11px; "><em>Edytor Orca &#8211; podgląd zawartości pliku aktualizacyjnego w tabeli &quot;Media&quot;</em></span></p>
<p>Ponownie przechodzimy do wymienionych powyżej tabel i sprawdzamy ich poprawność. Jak można łatwo zauważyć tabela&nbsp;<em>&quot;Media&quot;</em> zawiera nieprawidłowe wpisy odnoszące się do numeru sekwencyjnego naszego pliku. Ostatnim numerem sekwencyjnym w tabeli <em>&quot;Files&quot;</em> jest <em>24013</em>, natomiast w tabeli <em>&quot;Media&quot;</em> numer sekwencyjny powiązany z &nbsp;<em>&quot;Data1.cab&quot;</em>&nbsp;&nbsp;wynosi&nbsp;<em>18227 </em>(poprzednio<em> &quot;25000&quot;</em>). Ostatnim &nbsp;numerem sekwencyjnym dodanym przez aktualizację jest <em>24013</em> (kolumna <em>&quot;LastSequnce&quot;</em>).</p>
<p>Aby naprawić ten błąd należy otworzyć w edytorze <em>&quot;Orca&quot;</em> plik <em>&quot;AcroPro.msi&quot;</em> i w tabeli <em>&quot;Files&quot;</em> zmienić numer sekwencyjny pliku <em>&quot;Annots.api_911&quot;</em> z <em>25000</em>&nbsp;np. na <em>18215</em> (jeden z wolych numer&oacute;w w zakresie od 1 do 18227) i zapisać zmiany. Nie musimy się tutaj martwić, że bezpośrednio modyfikujemy plik .msi, ponieważ jest on zmieniany przy każdej aktualizacji. Jedyne co pozostanie do zrobienia, to implementacja pozostałych aktualizacji, aż do wersji 9.3.4 i p&oacute;żniejsze dopasowanie pakietu instalacyjnego .msi (przy pomocy transformacji .mst) np. przy użyciu narzędzia <em>&quot;Adobe Customization Wizard&quot;</em> dostępnego na stronach producenta.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/bledy-msi/blad-msi-1334-i-2602-przy-aktualizacji-plikow-instalacyjnych-adobe-acrobat-professional-9-0-do-wersji-9-3-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Specjalne foldery w Windows Installer</title>
		<link>http://www.softdeploy.eu/how-to/specjalne-foldery-w-windows-installer/</link>
		<comments>http://www.softdeploy.eu/how-to/specjalne-foldery-w-windows-installer/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 10:54:31 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[Windows Installer]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=419</guid>
		<description><![CDATA[Windows Installer zawiera w sobie kikanaście zdefiniowanych &#34;Property&#34;&#160; do obsługi standardowych folder&#243;w&#160;(np.&#160;&#34;WindowsFolder&#34; &#8211; wskazujący na&#160;folder Windows).&#160;Pozostałe foldery&#160;można obsłużyć poprzez zmienne środowiskowe (np. %ALLUSERSPROFILE%), kt&#243;re mogą być używane analogicznie do  [...]]]></description>
			<content:encoded><![CDATA[<p>Windows Installer zawiera w sobie kikanaście zdefiniowanych &quot;Property&quot;&nbsp; do obsługi standardowych folder&oacute;w&nbsp;(np.&nbsp;<strong><em>&quot;WindowsFolder&quot;</em></strong> &#8211; wskazujący na&nbsp;folder Windows).&nbsp;Pozostałe foldery&nbsp;można obsłużyć poprzez zmienne środowiskowe (np.<strong><em> %ALLUSERSPROFILE%</em></strong>), kt&oacute;re mogą być używane analogicznie do &quot;Property&quot; ale w trochę odmiennej postaci zrozumiałej dla wewnętrznych prcedur Windows Installera&nbsp;(np.<strong><em> [%ALLUSERSPROFILE]</em></strong><em>)</em><strong><em>.</em></strong><em> </em>Zar&oacute;wno&nbsp;standardowe foldery w Windows Installer&nbsp;jak i&nbsp;ich odpowiedniki&nbsp;wyczytywane poprzez zmienne środowiskowe nie pokrywają w całości wszystkich dostępnych&nbsp;folder&oacute;w w Windows, kt&oacute;rych umiejscowienie i mnogość zależne są od jego wersji. W przypadku napotkania problem&oacute;w przy wyczytywaniu ścieżki do niestandardowego folderu bardzo pomocnym może okazać się poniższy skrypt wyczytujący wartości&nbsp;<strong><em>CSIDL_*</em></strong> w postaci ścieżki dostępu do niego i zapisujący tą wartość w tabeli &quot;Property&quot;. Poniższy skrypt wyczytuje ścieżkę do katalogu&nbsp; <strong><em>&quot;c:\Documents and Settings\All Users\Dokumenty&quot; </em></strong>i zapisuje ją w tabeli &quot;Property&quot; pod&nbsp;nazwą &nbsp;<em><strong>&quot;SD_COMMON_DOCUMENTS&quot;</strong></em>.</p>
<blockquote>
<p><em>Const CSIDL_COMMON_DOCUMENTS = &amp;h2e <br />
		Set objShell = CreateObject(&ldquo;Shell.Application&rdquo;) <br />
		Session.Property(&ldquo;SD_COMMON_DOCUMENTS&rdquo;) = objShell.Namespace(CSIDL_COMMON_DOCUMENTS).Self.Path <br />
		Set objShell = Nothing</em></p>
</blockquote>
<p>Skrypt powinien być umieszczony jako&nbsp;akcja (&quot;Custom&nbsp;Action&quot;) przed sekwencją &quot;CostFinalize&quot;,</p>
<p style="text-align: center">&nbsp;<a href="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_CustomAction.jpg"><img alt="Tabela " border="2" class="aligncenter size-full wp-image-465" height="31" src="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_CustomAction.jpg" title="Tabela CustomAction wraz ze skryptem" width="600" wraz="" ze="" /></a></p>
<p style="text-align: center"><em>&nbsp;<span style="font-size: 11px">Umiejscowienie&nbsp;skryptu w tabeli&nbsp;&quot;CustomAction&quot;</span></em></p>
<p style="text-align: center"><em><span style="font-size: 11px"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_InstallExecuteSequence.jpg"><img alt="Tabela " border="2" class="aligncenter size-full wp-image-470" height="102" src="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_InstallExecuteSequence.jpg" title="Tabela InstallExecuteSequence wraz z umiejscowieniem skryptu" umiejscowieniem="" width="600" wraz="" z="" /></a></span></em></p>
<p style="text-align: center"><em><span style="font-size: 11px"><span style="font-size: 11px">Umiejscowienie&nbsp;skryptu w tabeli&nbsp;&quot;InstallExecuteSequence&quot;</span></span></em></p>
<p>wykonywany wewnętrznie jako&nbsp;&quot;Call VBScript from Embeded Code&quot;&nbsp;i&nbsp;natychmiastowo&nbsp;&quot;Immediate&quot;.</p>
<p style="text-align: center">&nbsp;<a href="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_Directory.jpg"><img alt="Tabela " border="2" class="aligncenter size-full wp-image-466" height="31" src="http://www.softdeploy.eu/wp-content/uploads/2010/04/SpecialDirs_Directory.jpg" title="Tabela Directory" width="600" /></a></p>
<p style="text-align: center"><span style="font-size: 11px"><em>Tabela&nbsp;&quot;Directory&quot;</em></span></p>
<p>W załączonej&nbsp;tabeli wymienione zostały wszystkie dostępne katalogi, kt&oacute;re można wyczytać poprzez powyższy skrypt w systemach Windows XP/Vista/7 (ze względu na rozmiar tabela została umieszczona na osobnej stronie) &#8211; <a href="http://www.softdeploy.eu/?page_id=482">Tabela: Specjalne foldery w Windows Installer<br />
	</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/how-to/specjalne-foldery-w-windows-installer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Błąd MSI 1402 i 1406 podczas aktualizacji Adobe Readera</title>
		<link>http://www.softdeploy.eu/bledy-msi/blad-msi-1402-i-1406-podczas-aktualizacji-adobe-readera-2/</link>
		<comments>http://www.softdeploy.eu/bledy-msi/blad-msi-1402-i-1406-podczas-aktualizacji-adobe-readera-2/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 09:44:54 +0000</pubDate>
		<dc:creator>Krzysiek</dc:creator>
				<category><![CDATA[Błędy-MSI]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[Windows Installer]]></category>

		<guid isPermaLink="false">http://www.softdeploy.eu/?p=380</guid>
		<description><![CDATA[Przy ostatniej aktualizacji&#160;Adobe Readera z wersji&#160;7.1.1 do&#160;8.2 natrafiłem na pewien błąd, kt&#243;ry uniemożliwił instalację aktualizacji na&#160;około 30 % &#34;klient&#243;w&#34;. Podczas procesu instalacji wygenerowane zostały błędy krytyczne, kt&#243;re uniemożliwiły dalszą instalację programu.&#160;Użytkowicy końcowi zostali  [...]]]></description>
			<content:encoded><![CDATA[<p>Przy ostatniej aktualizacji&nbsp;Adobe Readera z wersji&nbsp;7.1.1 do&nbsp;8.2 natrafiłem na pewien błąd, kt&oacute;ry uniemożliwił instalację aktualizacji na&nbsp;około 30 % &quot;klient&oacute;w&quot;. Podczas procesu instalacji wygenerowane zostały błędy krytyczne, kt&oacute;re uniemożliwiły dalszą instalację programu.&nbsp;Użytkowicy końcowi zostali pozbawieni Adobe Readera, gdyż aktualizacja w pierwszej kolejności odinstalowywała jego starszą wersję. Analizując logi i wpisy&nbsp;z dziennika zdarzeń napotkałem na&nbsp;dwa błędy Windows Installera o numerach 1402&nbsp;i 1406. Poniżej ich treść.</p>
<blockquote>
<p><strong><em>Error&nbsp;1402: Could not open key: HKEY_LOCAL_MACHINE\Software\Classes\.pdf\PersisstentHandler&quot;&#8230;</em></strong></p>
<p><em>Błąd 1402: Nie mogę otworzyć klucza: HKEY_LOCAL_MACHINE\Software\Classes\.pdf\PersisstentHandler&quot;&#8230; </em></p>
</blockquote>
<p>W&nbsp;dzienniku zdarzeń pojawił się następujący wpis:</p>
<blockquote>
<p>Typ zdarzenia:&nbsp;Błąd<br />
		Źr&oacute;dło zdarzenia:&nbsp;MsiInstaller<br />
		Kategoria zdarzenia:&nbsp;Brak<br />
		Identyfikator zdarzenia:&nbsp;11402<br />
		Data:&nbsp;&nbsp;2010-03-09<br />
		Godzina:&nbsp;&nbsp;13:59:58<br />
		Użytkownik:&nbsp;&nbsp;COMPUTERNAME\USERNAME<br />
		Komputer:&nbsp;COMPUTERNAME<br />
		Opis:<br />
		Produkt: Adobe Reader 8.1.0 &#8211; Polish &#8212; Błąd 1402.Nie można otworzyć klucza: HKEY_LOCAL_MACHINE\Software\Classes\.pdf\PersistentHandler.&nbsp; System error 5.&nbsp; Zweryfikuj sw&oacute;j dostęp do klucza lub skontaktuj się z obsługą personelu.<br />
		&nbsp;</p>
</blockquote>
<blockquote>
<p>&nbsp;<em><strong><em>Error&nbsp;1406: Could not&nbsp;write value to key: &quot;\Software\Classes\.pdf\PersisstentHandler&quot;&#8230;</em></strong></em></p>
<p><em><em>Błąd 1406: Nie mogę&nbsp;zapisać wartości do klucza: &quot;\Software\Classes\.pdf\PersisstentHandler&quot;&#8230;</em></em></p>
</blockquote>
<p>następny&nbsp;wpis z dziennika zdarzeń:</p>
<blockquote>
<p><em>Typ zdarzenia:&nbsp;Błąd<br />
		Źr&oacute;dło zdarzenia:&nbsp;MsiInstaller<br />
		Kategoria zdarzenia:&nbsp;Brak<br />
		Identyfikator zdarzenia:&nbsp;11406<br />
		Data:&nbsp;&nbsp;2010-03-09<br />
		Godzina:&nbsp;&nbsp;15:47:11<br />
		Użytkownik:&nbsp;&nbsp;COMPUTERNAME\USERNAME<br />
		Komputer:&nbsp;COMPUTERNAME<br />
		Opis:<br />
		Produkt: Adobe Reader 8 &#8211; Polish &#8212; Błąd 1406.Nie można zapisać wartości&nbsp; dla klucza \Software\Classes\.pdf\PersistentHandler.&nbsp; Błąd systemowy .&nbsp; Zweryfikuj swoje przywileje dostępu do klucza lub skontaktuj się z obsługą personelu.</em><em><br />
		</em></p>
</blockquote>
<p>Z&nbsp;powyższych informacji wynika, że pakiet podczas aktualizacji ma problemy z&nbsp;odczytem/zapisem informacji z/do klucza, a co za tym idzie, problemy z uprawnieniami. Bardzo interesującą rzeczą jest&nbsp;też to, że pakiet podczas deinstalacji &quot;zdejmuje&quot; (sytuacja ta nie występuje zawsze) prawa do odczytu/zapisu grupie Administrator&oacute;w&nbsp;i koncie systemowemu. Problem ten można naprawić poprzez przejęcie obiektu przez grupę Administrator&oacute;w oraz przywr&oacute;cenie uprawnień odczytu/zapisu zar&oacute;wno dla grupy Administrator&oacute;w jak i dla konta systemowego. Wykonamy to w następujący spos&oacute;b.</p>
<ul>
<li>Otwieramy erytor rejestru i przechodzimy do klucza &quot;<em>HKCR\.pdf\PersistenHandler&quot;</em>. Następnie wchodzimy we &quot;Właściwości&quot; klucza i sprawdzamy, czy grupa Administrator&oacute;w oraz konto systemowe&nbsp;mają pełne prawa (Full control) do wyżej wymienionego klucza.&nbsp;W przypadku stwierdzenia braku pełnych uprawnień do klucza&nbsp;wykonujemy kolejno.</li>
<li>Przechodzimy do &quot;Zaawansowanych&quot; uprawnień do klucza rejestru</li>
</ul>
<p style="text-align: center"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/03/uprawnienia.jpg"><img alt="" class="alignnone size-full wp-image-317" height="463" src="http://www.softdeploy.eu/wp-content/uploads/2010/03/uprawnienia.jpg" title="uprawnienia" width="367" /></a></p>
<p style="text-align: center"><span style="font-size: 11px"><em>Wyb&oacute;r &quot;Zaawansowanych&quot; uprawnień do klucza rejestru</em></span></p>
<ul>
<li>Następnie w zakładce &quot;Właściciel&quot; sprawdzamy czy grupa Administratorzy jest domyślnym &quot;Właścicielem&quot; obiektu. Jeśli nie, to ustawiamy ją jako domyślną oraz zaznaczmy opcję &quot;Zamień właściciela dla podkontener&oacute;w i obiekt&oacute;w&quot;.</li>
</ul>
<p style="text-align: center">&nbsp;<a href="http://www.softdeploy.eu/wp-content/uploads/2010/03/zaawansowane.jpg"><img alt="" class="alignnone size-full wp-image-331" height="476" src="http://www.softdeploy.eu/wp-content/uploads/2010/03/zaawansowane.jpg" title="zaawansowane" width="551" /></a></p>
<p style="text-align: center"><span style="font-size: 11px"><em>Zakładka &quot;Właściciel&quot; obiektu</em></span></p>
<ul>
<li>W ostatnim kroku powracamy do zakładki &quot;Uprawnienia&quot; i zaznaczamy opcję &quot;Zmień wpisy uprawnienia na wszystkich obiektach podrzędnych na wpisy tutaj pokazane, stosowane do obiekt&oacute;w podrzędnych&quot;</li>
</ul>
<p style="text-align: center"><a href="http://www.softdeploy.eu/wp-content/uploads/2010/03/uprawnienia1.jpg"><img alt="" class="alignnone size-full wp-image-334" height="476" src="http://www.softdeploy.eu/wp-content/uploads/2010/03/uprawnienia1.jpg" title="uprawnienia1" width="551" /></a></p>
<p style="text-align: center"><span style="font-size: 11px"><em>Zakładka &quot;Uprawnienia&quot;</em></span></p>
<ul>
<li>Zatwierdzamy zmiany i ponownie wykonujemy instalację pakietu. Przy natrafieniu&nbsp;na podobny problem dotyczący&nbsp;innych kluczy rejestru, postępujemy w analogiczny spos&oacute;b.</li>
</ul>
<p>Opisany&nbsp;powyżej problem dotyczy wersji Adobe Readera 6.x&nbsp;- 9.x. Proces nadawania uprawnień możemy zautomatyzować poprzez umieszczenie w pakiecie akcji (&quot;CustomAction&quot;) przywracającej standardowe uprawnienia do&nbsp;kluczy rejestru grupie Admnistrator&oacute;w i kontu systemowemu.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softdeploy.eu/bledy-msi/blad-msi-1402-i-1406-podczas-aktualizacji-adobe-readera-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

