Moxy 6.0 on Windows 2008 R2 Terminal Server

I was recently tasked with the construction of a Windows 2008 R2 terminal server for a financial company running the typical Advent applications: Axys and Moxy.

Needless to say.. Axys was easy and Moxy doesn’t natively support 64-bit Windows so it was a pain in the neck. I made it work however, and this is how:

1. I did the obvious and installed the 64bit versions of all the components Moxy needs (vcredist x64 and x86, SQL client components x64, SQL Server 2005 ADOMD, ASOLEDB9, BC x64)

2. Then I created an ODBC system connection that points to the SQL server with username and password saved. Name it MOXYDSN32

3. x64 saves ODBC in the same reg key as x86… but the application is looking in the x64 key– stupid. I don’t know who’s fault that is at Microsoft, but you sir, are not my friend. Normally ODBC is saved in:
HKLM/Software/ODBC/ODBC.INI/

…but you have to export and import the MOXYDSN32 key to:
HKLM/Software/Wow6432Node/ODBC/ODBC.INI/

4. Now because the installation process won’t run at all, we have to manually run install. Luckily, when you install Moxy on a PC that DOES work it saves a log. This log basically boils down to this batch file:

@echo off
copy M:\Moxy60\msxml4.dll C:\WINDOWS\system32\msxml4.dll
copy M:\Moxy60\msxml4r.dll C:\WINDOWS\system32\msxml4r.dll
copy M:\Moxy60\winhttp5.dll C:\WINDOWS\system32\winhttp5.dll
regsvr32 C:\WINDOWS\system32\msxml4.dll
regsvr32 C:\WINDOWS\system32\winhttp5.dll
copy M:\Moxy60\sqlis3.dll “C:\Program Files\Common Files\System\OLE DB\sqlis3.dll”
copy M:\Moxy60\sqlis3r.dll “C:\Program Files\Common Files\System\OLE DB\sqlis3r.dll”
copy M:\Moxy60\sqlvdr3.dll “C:\Program Files\Common Files\System\OLE DB\sqlvdr3.dll”
copy M:\Moxy60\sqlvdr3r.dll “C:\Program Files\Common Files\System\OLE DB\sqlvdr3r.dll”
copy M:\Moxy60\sqlxml3.dll “C:\Program Files\Common Files\System\OLE DB\sqlxml3.dll”
copy M:\Moxy60\sqlxml3r.dll “C:\Program Files\Common Files\System\OLE DB\sqlxml3r.dll”
copy M:\Moxy60\xblkld3.dll “C:\Program Files\Common Files\System\OLE DB\xblkld3.dll”
copy M:\Moxy60\xblkld3r.dll “C:\Program Files\Common Files\System\OLE DB\xblkld3r.dll”
regsvr32 “C:\Program Files\Common Files\System\OLE DB\sqlvdr3.dll”
regsvr32 “C:\Program Files\Common Files\System\OLE DB\sqlxml3.dll”
regsvr32 “C:\Program Files\Common Files\System\OLE DB\xblkld3.dll”
regsvr32 M:\Moxy60\axysdata.dll
regsvr32 M:\Moxy60\mxapxexprt.dll
regsvr32 M:\Moxy60\mximprt.dll
regsvr32 M:\Moxy60\moxycsv.dll
regsvr32 M:\Moxy60\qbcontxt.dll
regsvr32 M:\Moxy60\qrybldr.dll
regsvr32 M:\Moxy60\editqitm.dll
regsvr32 M:\Moxy60\qbedit.dll
regsvr32 M:\Moxy60\mxusrdatamgr.dll
regsvr32 M:\Moxy60\mxqrytree.dll
regsvr32 M:\Moxy60\mxrulemgr.dll
regsvr32 M:\Moxy60\mxPubSubCOMWire.dll
regsvr32 M:\Moxy60\mxPubSubPSPRovider.dll
regsvr32 M:\Moxy60\mxPubSubRemoteProvider.dll
regsvr32 M:\Moxy60\mxProviderComDlg.dll

Running this as a batch file will install Moxy. M:\ is the network drive Moxy is installed to. I do not work for Moxy and this is not a supported configuration. There are some bugs that I haven’t been able to work out (random error messages that don’t affect the overall functionality).

Is your e-mail broken? Blame Cisco.

Just a few things you may eventually come across:

Getting an NDR stating #500 Firewall Error# is usually the fault of Cisco IOS. Chances are you have the ip inspect command set for smtp/esmtp. Removing this resolves the error (which may be inconsistent and difficult to replicate on demand).

Fixing Fake AntiVirus spyware infections is very easy in a domain environment through the use of PSLIST/PSKILL from the PSTOOLS package that Microsoft has available through Sysinternals. It appears that most fake antivirus programs associate themselves with the “exefile” class and redirect .exe to a “scefile” class where it loads its own executable as a wrapper. If by chance you can still run regedit (some block it… others don’t) you can remove the wrapper from the key in regedit and then set permissions on the key to read only for everyone. This will allow you to download and install MalwareBytes and/or ComboFix. Other times regedit is blocked and you will have to locate the file itself (almost always in the user’s temp files) and set permissions to deny full control to everyone and end the task. If you are looking for AntiVirus software that works well in preventing this type of spyware infection, either Symantec Endpoint (11.0.5 is latest release) or Microsoft Forefront Client Security seem to work very well.

20-20 Worksheet: The file format was not recognized

A while back I was troubleshooting an error for a user running 20-20 Worksheet on a Windows XP machine. The user was one of many running the program, but had a specific issue opening sif files that no one else had.

If she attempted to open a sif file, she would get the file format was not recognized. Other users would attempt to open the same file and they would not have errors.

Like most technicians… I don’t have the patience to call other companies for technical support. So I sent 2020 customer support an e-mail and while I waited I decided to do it on my own.

I quickly downloaded process monitor and excluded all the crap. I opened the sif file and magic! It couldn’t find a few registry entries (HKCU/Software/Classes/CLSID and HKCR/CLSID). I went to a machine that was working and exported the missing keys and it fixed the problem.

Problem: Opening a .sif file within 20-20 Worksheet produced a “The file format was not recognized” error message.
Resolution: Import missing registry keys

…the best part is the e-mail correspondence between myself and “technical support”

“Great,

What registry key did you import into her machine that fixed it?? And where in the registry did you find this key?

Thanks

Sincerely, 20-20 Technical Support Team”

Virtualizing your environment with Microsoft Hyper-V

After having completed 3 more virtualization projects this month, I have decided that anyone who hasn’t done so yet must be the same type of people running CRT monitors, Intel Pentium 4 processors and Windows XP.  So… let me explain the benefits of virtualization.

First of all, if you pay your own electric bill and you have more than 2 servers this will reduce your power bill. The new HP servers, in combination with Windows 2008 R2, have excellent “green” features such as the ability to shut off cores that are not in use (google: p-states). Newer processors run somewhere in the neighborhood of 65 to 80 watts. Older processors fall somewhere above 100 watts. Chalk one up for savings: You are running all of your servers on 1 or 2 servers that can run on a fraction of their cores when idle.

Second… ease of management. If you have ever worked for a company that offers managed services then you know how ridiculous it is to managed a customer with lets say… 10 different physical servers. I’m sure you just love trying to manage 10 open RDP windows. On top of that… one of those 10 physical servers locks up. Does it have iLO? If it does, did I document it? I didn’t… crap, now what! Hyper-V allows you to manage the console of each virtualized server from one server. You can shutdown, restart, pause/save state without having to RDP into the server. You can manage the consoles the way you would manage 10 open word documents (Windows 2008 R2, like Windows 7, has that nifty taskbar grouping feature).

Third… if you spend a little extra dough you should add a second server (hopefully you decided on the enterprise version of Windows Server) and implement a Hyper-V cluster. You can have failover and the ability to avoid downtime even when its time to do all those pesky maintenance tasks. Live migration is pretty awesome, I just wish that when a Hyper-V node crashed, that the server wouldn’t reboot unexpectedly. They should really figure that one out… anyways… FAILOVER AND LESS DOWNTIME.

Lastly, and least important of all… you get to put all your old hardware on eBay… clean out that rack and have it look presentable again. Cosmetic, I know… but any IT guy can appreciate a clean, clutter-free rack space.

Something new to me that I have been playing around with is Microsoft’s Windows Deployment Services in R2… its benefits really stand out in a virtual environment. Deploying new servers, or prepping virtual servers for customers has never been easier.

If you want consulting to see if you can benefit from virtualization, or perhaps you already know the benefits and you need a company with several years of virtualization experience over a wide variety of platforms (yea, yea… VMWare can do it too), head on over to www.dcicorporation.com and drop us a line.

Windows Vista Fax and Scan – Access denied to My Documents

I came across what I thought to be a very common issue… but the solution ended up being rather odd (and out of compulsiveness, I just happened to stumble upon it).

When presented with an access denied error and users accessing their My Documents folders via redirection, my first inclination is to check permissions. I did notice some rather strange permissions on the folders, so I set them to owner/system/administrator full control with inherit and re-applied them to all subfolders. I then set the owner of the files to the user. This did not resolve the problem.

Ultimately… my obsessive behavior of deleting that damned desktop.ini file resolved the problem. After I deleted the desktop.ini file, magically it started working. This left me confused, and laughing, initially.

Apparently the desktop.ini file is what changes “My Documents” to look like “Joe’s Documents.” I thought this would just be interpreted as an alias. If I am on the server and I saw “Joe’s Documents” I could still type My Documents in the path and reach the same destination. Apparently Vista’s Fax and Scan doesn’t make that distinction and decided that it would use alias path to connect– I don’t know why Microsoft failed to accommodate this problem, it seems like it shouldn’t make a difference.

Problem: Vista’s WFS cannot access My Documents
Solution: Delete desktop.ini

Hi, and stuff.

Welcome to my brain dump.

I plan on posting stuff I come across in my field. I work as a network engineer for Decision Consultants, Inc. (www.dcicorporation.com) and I am a jack of all trades for them. You are more than welcome to contact DCI if you read this and decide you wish to pay for my expertise– its not cheap, and thats on purpose.