UninstallString without double quotes

Sunday, October 23, 2016

This is second part how to find UninstallString windows application with native windows tools. In the first part I found that there is brilliant way to use double quotes cheat.

In this part I show one way how to uninstall program if the Uninstall string is not in double quotes.

The main goal I have is to create a multi character delimiter
reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\HandBrake" /v UninstallString
    UninstallString    REG_SZ    C:\Program Files\Handbrake\uninst.exe
I want to use     REG_SZ     as delimiter so I can extract last part which in this case is
C:\Program Files\Handbrake\uninst.exe
This can be accomplished with:
@echo off
set u=Microsoft\Windows\CurrentVersion\Uninstall
for /f "tokens=*" %%a in ('^
reg query "%sw%\Wow6432Node\%u%\HandBrake" /v UninstallString ^|
find "UninstallString"') do set "str=%%a"
set "first=%str:    REG_SZ    =" & set "UninstallString=%"
echo "%UninstallString%"

If I merge all code in for loop then it will not work at all. This is how not to do:
do (
set "str=%%a"
set "first=%str:    REG_SZ    =" & set "UninstallString=%"
echo "%UninstallString%"

Install python2, requests, BeautifulSoup4, windows

Saturday, October 22, 2016

Install python2 latest installer.

Open cmd and install requests and BeautifulSOup:
cd C:\Python27\Lib\site-packages
..\..\python easy_install.py requests
..\..\python easy_install.py BeautifulSoup4

Now I create file test.py with content:
import requests
import HTMLParser
from bs4 import BeautifulSoup
r = requests.get("https://distrowatch.com/")
soup = BeautifulSoup(r.content, "html.parser")
print soup.prettify()

I open test.py in "IDLE (Python GUI)" and run the program by pressing [F5]:

Find all links on page and format its as html:
links = soup.find_all("a")
for link in links:
    print "<a href='%s'>%s</a>" %(link.get("href"), link.text)

Get all Head Titles:
d_data = soup.find_all("td", {"class": "NewsHeadline"})
for title in d_data:
    print title.text

An authentication error has occurred, 0x80090327

When I first time see this error message I thought this is impossible to solve. This is end of the road in Windows XP world.

Based on this information:

0x80090327 means:
I tested this situation myself on very fresh Windows XP SP3 without installed updates and I got the same message.

Then I used Windows XP with Unofficial SP4 and got the Remote Desktop Connection working again :)

If I have to really solve 0x80090327 message in read world situation without reinstalling OS, the first thing I do I will be to add this registry key:
reg add HKLM\SYSTEM\WPA\PosReady /v Installed /d 1 /t REG_DWORD /f

If I failed to add registry key I will try to reset registry permissions.

I will restart computer and refresh all update cache:
net stop wuauserv
rd %systemroot%\SoftwareDistribution /Q /S
SC sdshow wuauserv
wuauclt.exe /detectnow
I will try to install updates via GUI:

Remember monitor position of Remote Desktop

Friday, October 21, 2016

I have two full hd screens at the work. Right one is the main display and left is secondary.

I faced the challenge how to force remote desktop profile to open in left screen instantly.

I succeed this mission using Windows 8.1 operating system and RDP version 6.3.9600:

To succeed this mission I need to use winposstr attribute in RDP profile.
So I open notepad and then I open some *.RDP file.

I need to defined some coordinates of this screen:
If I have two 1280x1024 monitors. Right screen is the main and I want to show Remote Desktop in left then I add this line to the profile:
If the left screen is the main and I want to show Remote Desktop in right:
For two Full HD monitors if right screen is the main I show Remote Desktop in left:
If left screen is the main then I show Remote Desktop in right with:
Some explanation how this work:

Get Office 2016 offline installer

Monday, October 17, 2016

By clicking on this link:

I receive content:

Now I run this installer and I got setup.exe and configuration.xml

The default content of configuration.xml is:

  <Add OfficeClientEdition="32" Channel="Current">
    <Product ID="O365ProPlusRetail">
      <Language ID="en-us" />
    <Product ID="VisioProRetail">
      <Language ID="en-us" />


If I want to use 64-bit app then I replace OfficeClientEdition="32" with OfficeClientEdition="64"

To install only Word, Excel, PowerPoint I need to use configuration:
  <Add OfficeClientEdition="32" Channel="Current">
    <Product ID="O365ProPlusRetail">
      <Language ID="en-us" />
      <ExcludeApp ID="Access"/>
      <ExcludeApp ID="Groove"/>
      <ExcludeApp ID="InfoPath"/>
      <ExcludeApp ID="Lync"/>
      <ExcludeApp ID="OneDrive"/>
      <ExcludeApp ID="OneNote"/>
      <ExcludeApp ID="Outlook"/>
      <ExcludeApp ID="Publisher"/>
      <ExcludeApp ID="SharePointDesigner"/>
      <ExcludeApp ID="Visio"/>
  <Display Level="Full" AcceptEULA="TRUE" />
  <Property Name="FORCEAPPSHUTDOWN" Value="FALSE"/>

To download files for offline use I need to open command prompt in this directory:

Write down:
setup.exe /download configuration.xml

Wait a few hours and have some multi directories and files: