Saturday, March 17, 2007

ROM Upgrade on HP iPAQ rw6828

I flashed the ROM of my Pocket PC to version 1.01.03 from 1.00.03. I highly recommend you to upgrade your PPC ROM to the new version since this upgrade will solve many problems that this device is having with the earlier ROM. In the upgrade process I got in to problems initially but at the end I managed to succeed. So I thought of putting a post so that others can do it in one shot unlike me.

You can download the ROM upgrade from
http://h18007.www1.hp.com/support/files/handheldiPAQ/us/download/23981.html
the main software and driver page at HP is
http://h18007.www1.hp.com/support/files/handheldiPAQ/us/locate/1129_6331.html?jumpid=reg_R1002_USEN#0.

As the first thing what you needs to do is backup the data in you PPC because upgrading ROM will erase all the data. The easiest way to save your personal data is to create a ActiveSync membership and sync all the data to a Personal Computer. Then when you complete the upgrade you can sync back and restore the data.

Next make sure that you have ActiveSync 2.0, If you have newer version of ActiveSync I recommend you to uninstal that and install ActiveSync 2.0. You can get it from http://www.microsoft.com/downloads/details.aspx?familyid=7269173A-28BF-4CAC-A682-58D3233EFB4C&displaylang=en.

You should make sure that your computer will not go to standby or hibernate modes and also that your connection from PPC to the computer will be intact while the ROM upgrade is happening. Power failure or cable detach could cost you your PPC.

Remember to remove any SD cards, secondary batteries, SIM cards that you have in your PPC. Also note that it is good practice to charge your PPC above 75% before starting the upgrade.

Next double click on the file you downloaded from HP. Make sure you extract it to the default location provided (C:\iPAQ\SP34074).
Automatically it will start the upgrade process. Follow it as you follow a normal wizard.

If you are lucky the process will continue to 100% and the PPC will reset and will start as usual.

Then create a new partnership with ActiveSync and synchronize the data back to your PPC.

The upgrade process is installing things as follows,
0% - 90% - Pocket PC 2005 and related components
90% - 93% - New Boot Loader
94% - 95% - WAP Component
95% - 100% - WAN Component

If your update process stops at 90% and give a Windows error don't panic. What happens here is that the updater fails while closing the Pocket PC 2005 and opening Boot Loader.
If his happens make sure that you are running ActiveSync 4.2 then disconnect the PPC from the cable and remove the battery for about one minute. At the same time shutdown your computer and restart. Then reconnect the battery. The PPC will then come to a white screen with HP logo on it. now connect the USB cable again.

Go to the place where unzipped the files (C:\iPAQ\SP34074). Double click on hpRUU.exe to manually start the updater again. As you are in trouble already do not start any other applications while the updater is doing its work. If you have followed exactly what I have mentioned this time it should upgrade the ROM successfully. If not what you can do is try another two three times and if this fails you have to send your PPC to a HP service center to upgrade the ROM for you. Or else if you like to continue with the old ROM version you can install the older ROM which can be downloaded from http://h18007.www1.hp.com/support/files/handheldiPAQ/us/download/23966.html.

All the best for your upgrade.

Friday, March 02, 2007

Unexpected Behaviour in UltraFlowLayoutManager

Recently I faced a problem in one of my Tablet PC projects because of an unexpected behaviour of Infragistics UltraFlowLayoutManager.

My scenario is as follows, I am adding dynamically (run time) some UltraExpandableGroupBox controls to a panel which is managed by a UltraFlowLayoutManager. The problem was after the initial display the last group box added to the panel is going missing or appearing in some other location instead of the required location. You can notice this even if the Panel changes its size, normally the layout manger should automatically arrange the controls but here it will not do on the last control added.The actual problem was that the coordinates for the last control was not appropriately set and also the Z order of the control is reduced making it go behind the other controls.
I tried to set the coordinates myself but always the layout manager will override them.
I also tried changing Z order by calling each controls’ BringToFront method. But then all controls will start wondering around.

So as the solution I had to add a dummy Panel control as the last control and I made it to appear as a line to stop confusing users.
Now my application will display a line a the end at times and at times it will not. Kind of AI behavior huh :-).

Saturday, February 24, 2007

Back Again in Australia

I came again to Australia last week. This time I came through Singapore. The airport and it's facilities are wonderful. For the first time in my life I flew in Cathay Pacific and Quantas. Mmm I think even though the Airlines are cutting facilities these days these two airlines are in the list with other airlines who are not going down in their service. But Cathay Pacific are having things which needs to be corrected fast.

Friday, February 09, 2007

Newest Member of Microsoft Office - Groove

Check out the newest member of Microsoft Office product line. Microsoft Office Groove 2007. Groove is a team collaboration tool which will facilitate information sharing. This is what Microsoft is saying about Groove.

Microsoft® Office Groove® 2007 is Internet software for making direct connections with the people who are important to you. With Office Groove 2007, you can bring together team members from both inside and outside your company, with no IT assistance required and no need to waste time thinking about firewalls, servers, security, or network access. Additionally, you can enjoy the efficiency of always knowing each other's virtual location, or online presence, thus allowing for organic and quick conversation and collaboration.

If you are interested in knowing more visit http://office.microsoft.com/en-us/groove/HA101672641033.aspx. There you will be able to find an introduction animation from which you will be able to get an idea of Groove.
NetAdvantage for WPF

Infragistics have released a beta control set which is to be used for WPF (,.NET 3.0) named NetAdvantage for WPF. I think there they have created some cool control set which we'll be able to use with our development. If you are interested find more information at http://www.infragistics.com/hot/wpf.aspx#NetAdvantageforWPFBeta .

Thursday, February 08, 2007

Visual Studio 2005 not adding reference dlls to the deployment project

Recently I did face a problem when I created the setup for my Pocket PC application. My application had several projects and each project is supposed to add a dll to the setup. The problem was when I build the project it didn't add the reference dlls to the setup but only added the main application.

Later I found the solution for this which was to remove the main project output from the deployment project then go to debug mode and add the main project back again to the deployment project. The when the project is rebuilt all the dlls will be included properly.

Wednesday, February 07, 2007

Using Single Quotes in SQL Queries

Did you ever searched how to use a single quote inside SQL query? In this article I explain how to do.

( 1.) To display a quote in between of two field values.
SELECT FirstName + ''' ' + LastName From tblStudent

The above will put a single quote and a space in between FirstName and LastName fields.

( 2.) To insert a record with a quote to a table.
INSERT INTO [tbl] (ColumnName) VALUES ('I'+'''m ok.')

The above will insert a record into tbl and will put the string of {I'm ok.} to the column ColumnName.

( 3.) To update a record will be possible as follows.
UPDATE [tbl] SET ColumnName='I'+'''m ok.'

The above will update ColumnName values of all the records of tbl in to {I'm ok.}.

Tuesday, January 30, 2007

Windows 2003 Boot Error
Have anyone of you installed Windows XP on a machine which is having Windows 2003. If you have, you may have noted that after Windows XP installation Windows 2003 stops booting up. If you do try to start Windows 2003 in safe mode it will stop at CRCDisk.SYS.
The reason behind this is that when Windows XP installs it will replace some of the required common files with Windows XP version. When Windows 2003 tries to start it will fail since it cannot find the required files.

To start Windows 2003 again you have to replace 'NTDETECT.COM' and 'ntldr' on the boot drive (C:). These two files are located in the Windows 2003 CD inside I386 folder.

If this does not start Windows 2003 try running Windows 2003 setup again up until the first restart. When the system restarts Windows 2003 should start as normal.

In the worst case if that also wont solve your problem then you have to repair your Windows 2003 installation by continuing Windows 2003 setup and selecting Repair mode.

Thursday, January 25, 2007

Creating a folder named Prn

Do you know that you cannot create a folder named Prn in Microsoft Windows operating systems?

It is true that you cannot create folder as such visually (Using Windows Explorer). Instead you can create the folder by using command prompt.

Just open the command prompt and type

mkdir file://.c:/prn to create a folder named con in the C drive.

If you need to remove the created folder, type
rd file:////C:/prn
So if you only needed to create a folder named prn this is it, but if you would like to know further read on.

This restriction is because printer is referred by prn in device level (Printer is considered as a virtual folder.). So if you are permitted to create a folder named prn Windows will get confused when it is told to print a document since there are two folders/devices.
What we do here is we are making the directory a network associated folder by using '\\.\'.

Prn is not the only word which is blocked by Windows. Following words are also blocked because they are also representing some device in device level as I have mentioned below.

Word - Represented Device
prn - Printer
con - Console
lpt1 to lpt9 - Parallel Port Interfaces on IBM PCs (Named because at that time this port is heavily used by Line Printers)
com1 to com9 - Communication Ports
aux - Serial Ports
nul - Null (Not 100% sure)

If you need to create folders with the above names you have to create them as network associated folders.

Saturday, January 13, 2007

Setting up Networking in the Device Emulator

The method to connect the new Device Emulators that come with Visual Studio 2005 is different from the Emulators that came with Visual Studio 2003. The earlier version of emulators were able to connect to the external world by just clicking the Open and giving the network path to be opened in the File Explorer. But the new one if you try the same way it will give you and error saying there are no modem entries and also there are no network card present.
So if you would like to connect your emulator to the external world, please continue reading.

First thing you need to do is to install the Virtual Machine Network Driver for Microsoft Device Emulator.
To download that visit,
http://www.microsoft.com/downloads/details.aspx?familyid=DC8332D6-565F-4A57-BE8C-1D4718D3AF65&displaylang=en.

Then install it in your machine.

After installing it, new item will come under your network connection properties named "Virtual Machine Network Services". To make the emulator use your current network connection, you have to select the "Virtual Machine Network Services" check box. Afterwards it will use this connection when connecting out side.
To configure the Device Emulator to use the network, start the emulator of your choice, then go to File->Configure... . In the network tab select "Enable NE2000 PCMCIA network adapter and bind to" check box and press Ok. Now the emulator has a connection to use but to properly connect we need to set the network settings in the emulator.

Go to Click on Start->Settings and select Connections in the emulator. Then select "Network Cards".

Select "NE2000 Compatible Ethernet Driver" from Configure Network Adapters screen.


From here onwards you need to setup the settings as required by your network. The easiest way is to open the Network connection properties of your machine and set the emulator according to it.

After doing the settings you have to restart the device emulator to make the changes effective by clicking File->Reset->Soft from the emulator screen.

When the device restarts your emulator will have the ability to access the network.

To test the connectivity open the File Explorer from the Programs. Then click on Menu -> Open Path-> New Path.... Then type a valid path in your network and press Ok. Then you will be prompted for a User name, Password and a Domain. Fill the applicable details and press Ok.

If it doesn't get connected check the emulator connection settings. Check whether you need to setup proxies. To setup proxies click Start->Settings and go to Connections tab and select Connections and click on the "Set up my proxy server". Select "This network connects to internet" check box to make the emulator access internet. If proxies are used then enter the proxy details also.

If you correctly setup, the emulator will connect to the network and internet without problems.

Saturday, December 30, 2006

Enabling Remote Connections on SQL Server 2005

If you do the default installation of SQL Server 2005 the remote connections wont be enabled. The result of this will be that no one else wont be able to access to the SQL server instance of your machine resulting your databases to be used only from your machine. All the connections from outside to the databases hosted in your SQL server instance will be denied.

To make your databases accessible you have to do the following.

Step 1 - Right click on your SQL server instance in the Server Management Studio and click properties and get to the server properties.

In the left pane select Connections.

Check whether Allow remote connections to this server check box is selected under Remote Server Connections (this is defaultly selected).

Step 2 - Open SQL Server Surface Area Configuration Tool.

Click Start -> Programs -> Microsoft SQL Server 2005 -> Configuration Tools -> SQL Server Surface Area Configuration.

or

Browse to your Program Files directory and go to the path Microsoft SQL Server\90\Shared (For example C:\Program Files\Microsoft SQL Server\90\Shared).

There you need to find the executable named SqlSAC.exe and double click on it.

It will open SQL Server 2005 Surface Area Configuration screen.


Step 3 - Click on the Surface Area Configuration for Services and Connections link to open the configuration screen.

Select the Local and remote connections radio button.

Then choose accordingly the next radio button. For example if you need to make your server accessible through both TCP/IP and named pipes select the last radio button or else just select TCP/IP only if you only needs TCP/IP as illustrated in the image.

Then press Ok to save the changes.

Step 4 - We need to restart the SQL Server to apply the changed settings.

  • If you have installed SQL Server 2000 in your machine, double click on the SQL Server icon on the system tray area.
Select the SQL Server 2005 Server and click the Stop button to stop the database server and once it is successfully stoped press on the Start/Continue button to restart the database server.


  • If you have only installed SQL Server 2005 in your machine open SQL Server Configuration Manager by going to Start->All Programs->Microsoft SQL Server 2005->Configaration Tool->Configuration Manager.

Then select SQL Server 2005 Services from the left pane and select SQL Server from the right pane, right click on it and click Stop. Once it is successfully stoped press on the Start button to restart the database server.


When the SQL Server database engine restarts successfully you will be allowed to connect to the databases on your server from remote locations.

Thursday, December 07, 2006

My UK Trip

Last week I went to UK to attend my graduation. Following are some of the photos of the trip.

One evening in the university.

Working in the university.
Infront of the Stadium Of Light.
(From Right - Mr. M. H. A. Zufer - Study Center Administrator, Dr. Albert Bokma - Senior Research Fellow, Me)

In the ceremony. (Notice that I am the only one who got the degree in my batch whole row is empty :-).)

With my acedamic dress.



With some of my friends from Sri Lanka.
See the famous football ground. Isn't it beautiful?


We had a photo taken with some Lecturers and Doctors of the university.
Ohhh, The bus is waiting. Have to run.

Did some shopping in Heathrow airport duty free.


On my way back I browsed internet at the Heathrow airport.


World's biggest duty free - Dubai



Dubai - How rich and organized these countries are...

I stayed in Mid West hotel, It was really comfortable.

Day start on my way home 35000 feet above ground.