Kwakkelflap: tools for the IT pro

Wednesday, March 19, 2008

Code signing, part two

I just received word from Comodo. Seems I can't use their certificate in Vista making it useless for me. You'd think companies would adapt to a new OS after a year. Too bad they didn't tell me about this a week ago. Better yet: warn me when ordering the certificate that it can't be used on Vista. I received a refund the minute I asked about it, so no complaints there.

I'll be checking other certificates, but I don't think I'll postpone the Service - O - Matic release.

Labels: ,

Monday, March 17, 2008

Code signing

Code signing is more important than ever with the release of Windows Vista. People that use your software get a scary warning message when starting your application if the code isn't signed. This might scare potential customers which isn't a good idea.

So I decided to sign all my software. I bought a certificate from Comodo a week ago. It was the cheapest solution and I've read it doesn't matter much where you get your certificate from. But maybe I was wrong.

First they had me send them my ID and two other documents to prove I'm legit. Then they tried to install the certificate. This didn't quite work cause I always use Firefox. Seems they can only install it in Internet Explorer. A warning would have been nice. So I tried it a second time and the certificate was installed. The certificate had the wrong name on it (why did I send those 3 documents?). Also, I couldn't sign my software with this certificate. Contacted support again. They asked me to create several files and try again. Didn't work. Then they asked me to order again right until the payment step. Didn't work.

So a week later I'm still not able to sign my software. I'm testing release candidate 1 of the new Service - O - Matic and I'm eager to release it. But I still have to wait until I can sign it before I can actually release.

Labels: , ,

Saturday, February 02, 2008

Vista Reliability Monitor crash information

I'm sure everyone has programs crashing on their computer. Our Watchdog – O – Matic application can help out. But how can you check which programs crashed, and when?

Windows Vista has a program called 'Performance and Reliability Monitor' which tracks the crashes on your system. You can track how stable your computer is, based on the number of crashes. The graph like you see below includes information on various system failures.

So all you need to do is check the Reliability Monitor to discover which programs are crashing and create a new watchdog for each crashing program. With Watchdog – O – Matic these programs won't crash anymore so you won't see these items in the Reliability Monitor. This proves that your system will be more reliable and stable.

Labels: , ,

Tuesday, April 17, 2007

HOWTO: Interactive service in Windows Vista

In previous Windows versions, all services run in the same session as the first user who logs on. This session is called session 0. Running services and user applications together in session 0 poses a security risk. In Windows Vista, only system processes and services run in session 0. Vista isolates services in session 0 and makes session 0 noninteractive. The user logs on to session 1, and runs applications in this session. Please refer to this article for a detailed explanation of services and session 0.

The result of this change is that an interactive service is not visible for a user. The service will be running, but you will not see the GUI. However, the user can switch to the session 0 desktop and interact with the service by using the following dialog:

When you click on "Show me the message" you will switch to session 0. Here you can see your interactive service:

Switch back by clicking "Return now".

Note that the "Interactive Services Detection Service" (UI0Detect) has to run before you can see this dialog, so make sure this service is running. The easiest way to do this, is to put this service in your service dependencies. Your service will not start if this service isn't running. Also, change the startup type for this service from 'Manual' to 'Automatic'.

Of course, you can't do much in session 0, so you might want to create a desktop for this session. Create a new interactive service in Service - O - Matic, and use "C:\Windows\Explorer.exe" as the program.

You might want to create a load order group for this service, so other interactive services will start this service automatically.

In your other service, change the service dependencies. Use "UI0Detect" as a service dependency, and the load order group created above as a service group dependency.

If you start your service, you can see the same message as before, but you will have a functioning desktop in session 0.

Labels: ,

Monday, April 02, 2007

Vista and Inno setup

I'm still adjusting the software to Windows Vista. I think that the clock is ticking as more and more users will be switching to the new operating system. I've made huge improvements with the previous release, but I still need a few tweaks in the setup.

The biggest problem is that my applications need administrator rights for certain functions. One can't expect to be able to debug an application without those rights. This can all be solved without too much hassle, but I want to keep it easy enough for all users.

The previous setups would always disable the User Account Control. While this does solve the problem, it is not the best solution. It would be better to keep the UAC turned on, and still run my programs with administrator rights. So I decided to include a 'manifest file' with my program. This will make sure the application is run with administrator rights. I still want to be able to disable the UAC in the setup though, but it should be something that the user chooses to do instead of disabling it automatically.

So I played with the Inno setup code, and found out how easy it was to create my own function which determines if you want to adjust a registry key or not. I'm always surprised by the power of Inno setup. You can create anything you want using the scripting. Yes, it might require some programming. But you need those programming skills when creating your application in the first place right?

Labels: ,

Sunday, March 18, 2007

HOWTO: Install our software on Windows Vista

Run the setup after downloading it from our website. It is possible you will see the following screen:

Select to ‘run’ the setup program. After this, you will see the following screen if you haven’t disabled the 'User Account Control' as described here.

Our applications require the UAC to be disabled. The setup program will disable this automatically for you. For now, you can select ‘Allow’. This will enable you to run the setup program.

Now the setup will start. Follow the setup wizard. At the end of the setup, the program might ask you to reboot the PC. Please do so before using our application. Note the message on the bottom. This means the setup disabled the User Account Control system to make sure our application works as it should. It is possible you will also see this message after reboot. You can simply ignore this message.

It is possible that you will see a Firewall screen the first time you run our watchdog application. The watchdog application is trying to send local information on the network to detect if other watchdog programs are running. We advise you to 'Unblock' our application, certainly if you want to send emails with the watchdog program. Most functions will work without any problems if you choose to keep the watchdog blocked though.

Please contact us if you have any questions regarding the install.

Labels: ,