Applications migrating from MC70 QVGA Display to MC75 full VGA Display

Looking for Feedback and or Possible Issues with trying to port a MC70 QVGA Display application to MC75 Full VGA Display with Higher Resolution.

Please review considerations listed below and provide feedback and or issues...Thanks

Considerations:
1. Some application will port just fine without an formatting of the screen
2. .Net Managed Code
- A managed application usually only needs to change Layout.AutoScaleMode form property to DPI
- Recompile targeted device to WM6.0 and Compact Framework Used for the MC75
- If application is doing direct pixel manpulation, custom graphics, images, etc...rescale them 
  properly by using GetDeviceCaps and GetSystemMetrics



3. C, C++ Native Code


- If using only dialog resources, may not need any modification, otherwise application will need to
  add/change dialog resource for a new screen


- If code used windows/dialogs the control/font placement there will be issues if application is using
   fixed pixel locations instead of Dialog units and System metrics.Use GetDeviceCaps and 
   GetSystemMetrics to rescale elements and screens correctly.

John Seymour
From TA Engineer:I just made

From TA Engineer:

I just made an interesting discovery.  When I created a brand new .NET application with a single form and button targeted for WM6 and deployed it, the application was sized correctly for the MC75 despite no DPI aware code.  I then delved into the code the designer itself places in that application initialization function.
I found 2 lines that were not present in any of our samples.



//this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);


//this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;


I then loaded our scan_sample and removed the DoScale function, ofcourse as expected it was shrunk on the top left of the screen.  When I added these to lines, (Which later I found to simply be on the form properties tab.) The app resized properly for the VGA screen.


These applications were compiled for both CF2.0 and CF3.5, so this is not due to the legacy CF1.0 attributes mentioned in the white paper.

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Richard Linsley-Hood
This topic is well covered in

This topic is well covered in a recent Microsoft MSDN webcast.



MSDN Webcast: 24 Hours of Windows Mobile Application Development: Creating Adaptive Applications for Windows Mobile Devices (Level 300)



Which deals with the problems (and solution) of auto scaling for VGA .NET applications quite well especially dealing with what does and does not work..

Vote: 
Vote up!
Vote down!

Points: 1

You voted ‘up’


John Seymour
From Engineering: Porting

From Engineering: Porting Applications to High DPI Diplays
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Anonymous (not verified)
Is there a way to force the

Is there a way to force the MC75 into 1/4 VGA mode?  I have a customer that will be migrating from the PDT8000 to the MC75.  They are going to re-compile their PDT8000 (PPC2002) application to run under WM6, but they don't want to modify any of the screens to be DPI aware since they plan on replacing the entire application within 12 months and don't want to invest a lot of resources into the old application.  Instead, they would like to force the MC75 into 1/4 VGA mode to run the old application.  Once they move over to the brand new application they would switch to full VGA mode again and also use the DPI aware logic within the application.

Thanks,
Ken
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Anonymous (not verified)
There are some scenarios

There are some scenarios where the approaches described are not valid and the only quick solution is change the display driver from VGA to QVGA. With the first versions of .NET and WM2003 machines, the time to load and show the forms usually was very long and unaceptable for the user. To solve this, Microsoft recommended to place all the forms out of the visible area and move it into when necessary. Now, this is a problem because the forms are very small and visible all the time with VGA displays. To solve this they can either: redrawing all the forms or change the display to QVGA. The first one is a time consuming task and the customers reject it as they have other many options (QVGA devices) in the market. To keep such customers we need to be able to change the screen resolution to QVGA, and these days I think that "keep the customers with Motorola" should be a must more than ever.
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Gene Niles
Have you looked the Porting

Have you looked the Porting Applications to High DPI Displays.doc posted earlier on this topic? It refers to a tool that allows changes to take place on a App to support the large resoultion without the need to rebuild.
Vote: 
Vote up!
Vote down!

Points: 1

You voted ‘up’


Anonymous (not verified)
Yes, I have. But it does not

Yes, I have. But it does not help for the applicaton of the customer.
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Gene Niles
If using the tools does and

If using the tools does and recomendations does not work, it sounds like your customer is hard coding screen locations. If this is the case, it is really in their best interest to correct that. If you can provide a small sample of code that is not using hard coded coordinates, it may help to understand the issue better.
Vote: 
Vote up!
Vote down!

Points: 1

You voted ‘up’


Anonymous (not verified)
All, I'm working on a 2000

All,

I'm working on a 2000-2500 unit MC75 opportunity that requires temporary 1/4 VGA support to work with a legacy application.  There is another opportunity in EMEA with the same request.  We currently have a custom products request to provide for a 1/4 VGA driver that could be switched to full VGA mode (probably not on the fly). 

Greg Arranz is trying to determine if there is enough demand for this driver for the BU to fund the custom products request or if it will need to be split between the two requesting customers.  Please reply to this posting with any additional opportunities you are working on that may require 1/4 VGA support.

Thanks,
Ken
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Anonymous (not verified)
Hello Ken, I have an

Hello Ken, I have an opportunity in Spain for a customer migrating the application from MC9094 to MC7596. They need to have QVGA, the switching from VGA to QVGA is not a problem.
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Matthew Chu
I beleive if the application

I beleive if the application was written by the customer then he can use the tools suggested by Microsoft to make his application DPI aware.  However, I have a partner who has been using Terminal Services on the MC70 to remote into the Windows Server and then launch the user application, the screen is readable.  But on the MC75, once Terminal Services is launched to connect to the Windows Server, the login screen is small, and the user has difficulty reading the display and loggin in.  I understand that the user application we can make it DPI aware.  But who can tell me how to make the initial Terminal Service Windows Login screen DPI aware, so it can be at QVGA resolution?  
If not, I would agree with Ken, that we should have a QVGA/VGA switcher program.
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Andrew Wood
Ken, We have several

Ken,

We have several customers in the UK who are looking to switch from the 70 to the 75. It would show competitive advantage if we were able to switch the MC75 from VGA to QVGA - perhaps via a reg key as we do with the BT stack. Most of my cuastomers apps are not Device Resolution Aware and as we look to upgrade the early MC70 deployments running in QVGA mode would help in winning the business.
Andy
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Carl Pearson
Visual Studio offers a

Visual Studio offers a property on each form called AutoScaleMode.  Its properties are INHERIT, DPI and NONE.  This will allow the program to use a QVGA emulator to appear correctly on the VGA.  Play with those settings to get which one works.  I've slept since I messed with those.

Carl ~ Texas 
Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Log in to post comments