Limit user on Windows 8 tablet

Jan 21
2013

A customer has acquired a few Windows 8 tablet to use in a fair, and only to show pictures on them.

So the user on the tablet has to be very, very limited.

With the multiuser capability this is easy to accomplish. Simply create a new user and limit him:

- uninstalled all not needed apps from the apps screen, included the desktop app
- remove all files from the users start menu: delete all files and directories from
C:\Users\\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
- remove all rights for this user on the folder
C:\ProgramData\Microsoft\Windows\Start Menu\Programs
even the right to read it.
- logoff and logon the user

That’s it!

Reading from IniFile – StringBuilder 64 byte limit

Dec 06
2012

Today I have lost nearly 4 hours because I had strange crashs in my Vulcan application.

The error returned me to the VO times with the 5333 error – the GPF.

I had this code:

method GetString( cSection as string, cEntry as string, cDefault as string ) as string
local cReturn as string
local oReturn as System.Text.StringBuilder

oReturn := System.Text.StringBuilder{}

GetPrivateProfileString( cSection, cEntry, cDefault, oReturn, INI_STRING_LEN, _cFullPath )
cReturn := oReturn:ToString()

return cReturn

and sometimes it caused very strange crashes.

I had to correct the code as follows:

method GetString( cSection as string, cEntry as string, cDefault as string ) as string
local cReturn as string
local oReturn as System.Text.StringBuilder

oReturn := System.Text.StringBuilder{ INI_STRING_LEN }

GetPrivateProfileString( cSection, cEntry, cDefault, oReturn, INI_STRING_LEN, _cFullPath )
cReturn := oReturn:ToString()

return cReturn

because otherwise the StringBuilder class was initialized only with 64 byte and the API call corrupted the runtime memory.

IMHO such an error should be detected by the stringbuilder class itself.

No touch with Windows 8 on Acer Iconia Tab W500

Nov 24
2012

I have been running my Iconia Tab first with the Consumers Preview and then with the 90 day demo of the RTM version of Windows 8, and have been very satisfied with it. I used it mostly to test my first application written in Vulcan.NET specifically for touch use.

After the release of Windows 8 on the market, I installed an OEM version of Windows 8 64 bit on this tablet – and was very surprised, that the touch screen was not working. And a tablet without touch is completely useless. I searched on the internet, tried drivers, buth nothing. I have installed then a 32 bit version of Windows 8 with my OEM key – nothing.

Then I found a very interesting forum post in the german Acer forum: Windows 8 OEM will work only on Windows 8 certified hardware (and the Iconia Tab W500 is not), but Windows 8 Upgrade will be!!!!

Thanks to user MonitoMatze who posted this notice here (in german):

http://www.acer-userforum.de/acer-iconia-tab-w500-forum/48246-iconia-tab-w500-kein-touchscreen-nach-installationvon-win-8-pro-3.html#post382244

Tried to install from my Windows 8 Pro OEM media, using an upgrade key, not the OEM key (please note: installed from OEM media!) and the touchscreen worked!

Generally, I like Windows 8 on my tab because it is relatively fast and usable (and was at a reasonable price).

Deleted Google Calendar Events

Oct 30
2012

Several customers, and I myself, are using Google calendar to syncronize calendars between different mobile devices – like a poor man’s Exchange.

Now, a customer deleted all calendar events to cleanup an old Nokia device, and was very surprised that his calendar was empty also on his new iPhone.

After a search on the web, I have found this tool:

http://spanning.com/spannings-latest-free-tool-undelete-for-google-calendar/

With this I was able to recover his deleted items.

MySQL and null date values

Oct 23
2012

Today I have lost about two hours to work around a very strange MySQL Connector.NET behaviour.

This code

oMySQLDataReader:IsDbNull( nFieldPos )

gives an exception if the value is a date and has a null value. The exact error was

“unable to convert MySQL date/time value to System.datetime”

I have tried several things, but even

oMySqlDataReader:GetMySQLDateTime( nFieldPos)

fails.
Some messages suggested to add

“Allow Zero Datetime=true;”

to the connection string, but with this one I was unable to retrieve ANY date value.

Only adding

“Convert Zero Datetime=true;”

to the connection string solved the problem.

Positioning a form before Show()

Oct 02
2012

It was driving me crazy: I was not able to position a form before showing it. It was shown every time the height of my taskbar below the desired vertical position.

The solution was very simple: assign FormStartPosition.Manual to the :StartPosition member of the form:

self:StartPosition := FormStartPosition.Manual
self:Size := Size{ oDesktop:Width, oDesktop:Height }
self:Location := Point{ nX, nY }

Powerful Grid control for .NET applications

Oct 02
2012

After searching a while for a powerful and affordable grid control, I have found iGrid.NET from 10Tec, an Ucrainian software house.

iGrid.NET Home

Not only that this grid is ways faster than the DataGridView and the ListView from .NET framework itself, and priced at a very affordable level, but also the author has replied very fast to my questions – so also the support is very good.

ObjectListView – higly recommended

Sep 07
2012

Recently I had to fight with the slowness and missing possibilites of the .NET listview, at least compared to the ListView class I had in Visual Objects.

Then I have found ObjectListView – an opensource ListView class hosted on SourceForge:

http://objectlistview.sourceforge.net/cs/index.html

TopItem property of .NET ListView fails

Sep 04
2012

Today I have lost a lot of time because the .TopItem property of a ListView does not worked. After assigning a new item to this property, the TopItem most of the time remained unchanged.

The cause was a bug in the .NET framework: if the text value of the first column is empty, then setting the TopItem property fails.

Arrange pictures in Windows 8 Gallery

Aug 27
2012

How to arrange the pictures in the Windows 8 Picture Gallery?

There is no possibility to configure the sequence, but you can do it using an old trick from Windows 7: append the sequence in parentheses to the picture name:
Picture23(01).jpg
Picture37(02).jpg
PictureIDontKnow(03.jpg)

Visit Our Friends!

A few highly recommended friends...

Pages List

General info about this blog...