2007-12-11

Windows Vista / Office 2007 / Adobe Reader BUG!

This problem has actually happened to multiple clients of mine.
The issue is that the user will accidently try to open a Microsoft Word document with Adobe Reader. After that, it seems that Windows just does not know what to do with Word documents anymore, even after you tell it to open the documents with Word every time in the Open With dialog. (Although, now that I think of it, I did not confirm this to be true, I took the user's word for it. Something to check next time).
The thing that appears to have fixed the problem is to change the following value in the registry:
HKCR\.doc
Change the (default) value from word_auto_doc (or something like that) to Word.Document.8
Then right-click on a word document and select Open With, Select Program, select Microsoft Word, and check the Open with this program every time box.
Yet another annoyance with Vista / Office 2007. I will rant more about these in another blog, because there is soooo much to say...

2007-04-06

Volume Shadow Copy / Backups

I have spent the last few days working on implementing a new backup strategy for my servers. I thought I would share the fruits of my efforts so that others who are trying to attain the same goals might work a bit less than I did.

My goals for the new backup plan:
1. A homogenous environment (don't need to use different software on each machine)
2. Easy to use
3. Preferably would use differencing technology that only uploads the bytes that have been changed in each file to the server on incremental backups.
4. Client-Server design would be nice (install server software on a backup server, client software on other machines and backup to a central location).
5. Able to backup ALL files on the selected drives as a consistent snapshot that could ideally be restored to a new hard drive, inserted in a new machine, and...be ready to go (no re-installing everything, setting everything up, and restoring the files to the correct locations!).

I found some sosftware that meets most of the requirements from Vembu called StoreGrid. It is a client-server solution that is VERY easy to configure. It backs up to a central server location. It meets all of my goals except for the consistent snapshot one. This software can even do remote backups over the Internet, so it is also going to help me with the clients that I support outside of my own office. They have a solutions that allows you to backup files that are in use, but that caused me major grief on my servers and did not provide a consistent snapshot of the drive.

I found a way to make it work by using Volume Shadow Service on Windows XP & Windows Server 2003. I found some posts that allowed me to create a snapshot of a drive and then mount the snapshot to a drive letter in the computer. The drawback? It took a bit of work to get everything set up, and for the XP machines, I had to tweak the scripts to get it to work. I also had a bit of trouble finding some of the executables that I needed for the scripts.

The scripts came from Adi at Microsoft.

vshadow.exe for Windows Server 2003 and for Windows XP is included with the Volume Shadow Copy Service SDK 7.2 from Microsoft:
Shadow Copy Service SDK 7.2 from Microsoft
The vshadow file extracts to (pick the correct one, they are different):
C:\Program Files\Microsoft\VSSSDK72\TestApps\vshadow\bin\release-server
C:\Program Files\Microsoft\VSSSDK72\TestApps\vshadow\bin\release-xp

You only need dosdev for the Windows XP setup. dosdev was a bit harder to find, but I found it in the Microsoft Product Support Reporting Tools (MPSRPT), the one I used was the Exchange version, I think some of the other ones have it, too. When you run this, it will place the dosdev file in the C:\WINDOWS\MPSReports\Exchange\bin folder.

The tools are here:
MPSReports for exchange

After you have the executables and the scripts, set your backup in Vembu to use Pre & Post commands.
Pre Command:
COMMAND: C:/some folder/createshadow.cmd
ARGUMENTS: c: b:
WORKING PATH: C:/some folder
TIME OUT: 60

Post Command:
COMMAND: C:/some folder/removeshadow.cmd
TIME OUT: 60

*Note that removeshadow is not included in the scripts listed below, it is created by the createshadow.cmd script when it runs.

Here is what is required...
**********************
***Windows XP***
dosdev.exe
vshadow.exe
createshadow.cmd
wait.bat

The contents of the scripts are here:
createshadow.cmd:
-----------------------------------------------------------------
REM BEGIN SCRIPT
setlocal
if NOT "%CALLBACK_SCRIPT%"=="" goto :IS_CALLBACK
set SOURCE_VOLUME=%1
set DESTINATION_VOLUME=%2
set CALLBACK_SCRIPT=%~dpnx0
set TEMP_GENERATED_SCRIPT=GeneratedVarsTempScript.cmd
%~dp0vshadow.exe -script=%TEMP_GENERATED_SCRIPT% -exec=%CALLBACK_SCRIPT% %SOURCE_VOLUME%
del /f %TEMP_GENERATED_SCRIPT%
@goto :EOF

:IS_CALLBACK
setlocal
call %TEMP_GENERATED_SCRIPT%
%~dp0dosdev.exe %DESTINATION_VOLUME% %SHADOW_DEVICE_1%

REM ***This drive will only be available until this script exits***

@echo. >%~dp0RemoveShadow.cmd
@echo %~dp0dosdev -r -d %DESTINATION_VOLUME%>>%~dp0RemoveShadow.cmd
@echo %~dp0\VSHADOW.EXE -ds=%SHADOW_ID_1%>>%~dp0RemoveShadow.cmd
@echo del /f %~dp0RemoveShadow.cmd>>%~dp0RemoveShadow.cmd

REM echo off

:Loop
@CALL wait.bat 10
fsutil fsinfo volumeinfo %DESTINATION_VOLUME%>%~dp0shadow_drive_details.txt
@if errorlevel 1 goto :EndS
@goto :Loop

:EndS

REM END SCRIPT
----------------------------------------------------------------------

wait.bat:
----------------------------------------------------------------------
REM BEGIN SCRIPT wait.bat
@ping 127.0.0.1 -n 2 -w 1000 > nul
@ping 127.0.0.1 -n %1% -w 1000> nul
REM END SCRIPT
----------------------------------------------------------------------
***********************


***********************
For Windows Server 2003:

vshadow.exe
createshadow.cmd

createshadow.cmd:
----------------------------------------------------------------------
REM BEGIN SCRIPT createshadow.cmd
setlocal
if NOT "%CALLBACK_SCRIPT%"=="" goto :IS_CALLBACK
set SOURCE_VOLUME=%1
set DESTINATION_VOLUME=%2
set CALLBACK_SCRIPT=%~dpnx0
set TEMP_GENERATED_SCRIPT=GeneratedVarsTempScript.cmd
%~dp0\vshadow.exe -nw -p -script=%TEMP_GENERATED_SCRIPT% -exec=%CALLBACK_SCRIPT% %SOURCE_VOLUME%
del /f %TEMP_GENERATED_SCRIPT%
@goto :EOF

:IS_CALLBACK
setlocal
call %TEMP_GENERATED_SCRIPT%
%~dp0\vshadow.exe -el=%SHADOW_ID_1%,%DESTINATION_VOLUME%
@echo.
@echo *******************************************
@echo To delete the shadow copy, run the command:
@echo VSHADOW.EXE -ds=%SHADOW_ID_1%
@echo *******************************************
@echo.
@echo.>%~dp0\RemoveShadow.cmd
@echo REM ******************************************* >>%~dp0\RemoveShadow.cmd
@echo REM To delete the shadow copy, run the command: >>%~dp0\RemoveShadow.cmd
@echo REM VSHADOW.EXE -ds=%SHADOW_ID_1% >>%~dp0\RemoveShadow.cmd
@echo REM ******************************************* >>%~dp0\RemoveShadow.cmd
@echo REM This will remove the Shadow Volume %DESTINATION_VOLUME% >>%~dp0\RemoveShadow.cmd
@echo REM This message will self destruct.>>%~dp0\RemoveShadow.cmd

@echo. >>%~dp0\RemoveShadow.cmd
echo %~dp0\VSHADOW.EXE -ds=%SHADOW_ID_1%>>%~dp0\RemoveShadow.cmd
echo %~dp0\VSHADOW.EXE -ds=%SHADOW_ID_1%>%~dp0\ShadowCleanup.cmd
echo del /f %~dp0\RemoveShadow.cmd>>%~dp0\RemoveShadow.cmd

REM END SCRIPT
------------------------------------------------------------------------

2007-03-16

New Water Heater

I was greeted yesterday by no hot water, and a great pond in my back yard. On further inspection, I found that my hot water heater was leaking water through the exhaust vent on the top. Nice way to start the day.
Off to Home Depot I went. I purchased a tankless water heater and all of the pipes, fittings, and accessories I thought I would need for the installation. I had to remove the old water heater and the enclosure it was in, that was the hardest part of the job. I had to make another trip to Home Depot to get some adapters and other fittings for re-routing the lines (Kurt's Law: No project can be accomplished with only one trip to Home Depot).

I completed the installation, and now we have as much hot water as we need, and it only heats what we use. Tankless water heaters are a great advancement over traditional water heaters. It was more expensive, but in the long run it will be worth it.

2007-03-07

Odette's printer problem

Sage Master Builder printing on the HP Laserjet 2100. When printing multiple checks (3 copies), the checks are printed in sequence 3 times (1001, 1002, 1003, 1001, 1002...). They should print in the order (1001, 1001, 1001, 1002, 1002...) because that is the order the check paper is in when it is loaded in the printer.
To fix this issue, change the default printer settings in the HP Laserjet 2100. Disable Advanced Printing Features and Print Optimizations. This will cause the pages to print in normal order. Thank you HP for simplifying things to the point of non-functionality again.

2007-03-06

Must seriously blog now

It has become a requirement in the business community that one has a blog. I started this blog almost 2 years ago, and haven't touched it since. That could be a good thing, since I now have a blog that has been around for 2 years (supposedly it's better to have a blog that's been around).
Since the last blog, I did finish re-plastering the pool, we used it over the summer, but now it's empty again because of a leak in the pipe coming from the drain. That won't be too hard to fix, and we can be using it again this summer.
In addition to blogging, I have also found that YouTube is a very useful tool for marketing and proliferating ideas. I have uploaded an instructional video for one of my clients who sells motorcycle chocks for transporting your bike in a turck, trailer, or toy hauler. It's a great product, and I am happy to see he is doing well with it. The video is at EZ Chock Instructions.
I will soon be doing some posts regarding the products and services that we offer at Digital Aerospace Solutions.. We offer case management software for Private Investigators.
Thank you for visiting my blog.