Posts Mentioning RSS Toggle Comment Threads | Keyboard Shortcuts

  • Chewy Chong 2:43 am on May 23, 2005 Permalink | Reply  

    A Much Better SmartPhone HomeScreen (Source Included) 

    I did not like the default Microsoft SmartPhone home screen.  As I use my phone to tell the time (I do not like wearing a watch), it was very difficult to read the time from the original home screen especially when the backlight is off.  No use complaining… I created an alternate home screen.

    Original Screen

          Modified Screen

    Smarter Layout
    http://firechewy.com/content/smarterlayout/smarterlayout.home.xml

    New home screen has:

    1. Larger Time
    2. Contrasting background of Time control for quicker viewing
    3. Smaller ‘quick menu’ icons (16 pix instead of 32 pix) to save screen real-estate
    4. Removed service provider text (eg Vodafone) since we all know who we use
       

    Installation procedure as follows:

    1. Connect your phone to your PC via ActiveSync
    2. In ActiveSync, select the ‘Explore’ option
    3. Navigate to: \Storage\Application Data\Home
    4. Copy the above XML file ‘as is’ to the navigated directory
    5. Go to the ‘Home Page’ settings menu (Start > 8 > 4 or something similar) and select ‘Smarter Layout V1’ from the listbox

    Interested in tweaking the XML file for your own needs?  The following links provide details on how to modify the homescreen XML files.

    Customizing the Microsoft Smartphone 2002 Home Screen
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/sp02homescreen.asp

     

     
  • Chewy Chong 3:50 pm on May 17, 2005 Permalink | Reply  

    Playing with Bits and Bit Flags 

    I have recently been deep under the covers of Active Directory.  In a few occasions, AD stores the representation of multiple values as one single attribute.  For example, you may have seen my post regarding the userAccountControl attribute where each bit of this value has a certain meaning.  If the bit is ‘1’, this is a true flag while a ‘0’ is a false flag.

     

    The value 40.  In binary, this is ‘10100’ in binary.  The bit that represents 32 is true.  The bit that represents 8 is true.  Bits 16, 2, 1 are false. 

     

    Each of these bits can represent a Boolean state.  In the context of a userAccountControl value, this means:

     

    -         The account is does not require a password

    -         The account is disabled

     

    Been on a coding frenzy as I sit alone in my Melbourne hotel.  Having to manually do this conversion then look-up is a pain (doing it frequently due to my AD project) combined in the fact I love to code has resulted in yet another web tool.

     

    Bit Flag Play

    http://firechewy.com/content/BitFlagPlay

     

    This tool:

    -         Converts a number into binary

    -         Allows you to specify what each of these bits mean

    -         Allows you to save the ‘bits meaning’ into the URL so you can bookmark and return without having to specify the meaning again

     

    For the userAccountControl attribute:

     

    Click here as the URL is too long

     
  • Chewy Chong 6:43 am on May 16, 2005 Permalink | Reply  

    Converting a time value stored in AD into a ‘normal’ time format 

    When working in AD, you may notice date/time values (such as last logon time) are stored in the directory as a long freaking number… something like ‘127591348645212045’.  How does this work?

     

    This is the number of ticks (1 tick = 100 nanoseconds) from Jan 1, 1601.  That is not a typo… Jan 1, 1601.  For you Australians, that is 1 Jan, 1601.

     

    To convert this AD value into normal time, use the following bit of C# code.

     

    public string ConvertADTimeStampToLocalTime (long timeStampValue)

    {

          DateTime convertedTime = DateTime.FromFileTimeUtc(timeStampValue);

                     

          return(convertedTime.ToLocalTime().ToString());

    }

     

    public string ConvertADTimeStampToUTCTime (long timeStampValue)

    {

          DateTime convertedTime = DateTime.FromFileTimeUtc(timeStampValue);

                     

          return(convertedTime.ToString());

    }

     

    You may have to do a conversion to your local time zone.  Best bet to use the UTC time and manually convert if you are running this on a server who’s localization isn’t set by you (such as my web server somewhere on the pacific coast). 

     

    Do you need to convert a value really quickly and don’t want to crack open Visual Studio?  I wrote an ASP.NET page that should be able to help you do the conversion.  How nice I am.


    ConvertADTime Tool

    http://firechewy.com/content/ConvertADTime/

     

    Every system stores time in a different manner.  Back in my PERL days, the ‘beginning of time’ (or the epoch… do a search for this work for some interesting reading) was Jan 1, 1970 @ 0:00 GMT.  I recall the Mac’s epoch is Jan 1, 1904. 

     

    Would be interesting to know how and why the developers pick these dates.

     

     
  • Chewy Chong 9:31 am on May 15, 2005 Permalink | Reply  

    Talk: Identity and Access Management, Forging Protection in eBusiness (Melbourne – Thurs 26 May) 

    Avanade Systems Engineer – Security Specialist, Asia Pacific Chewy Chong

    Chewy Chong will:

    ·          Discuss the importance of a holistic approach to identity and access management concerns.

    ·          Show how existing and emerging provisioning technologies can automate the maintenance of user identities. This includes details of the Microsoft Identity Integration Server and the soon to be released Windows 2003 R2 / Active Directory Federation Services.

    ·          Demonstrate how an enterprise can increase its operational consistency and accountability by enforcing its organizational business processes.

     

    If you’re in Melbourne and would like to swing by, please RSVP by emailing chewyc@avanade.com.

     

    Lunch:                                Light lunch and refreshments will be provided.

    Times:                                10.00 am — 1.00 pm

    Where:                              Accenture Offices – Level 20 Melbourne Central

                                              360 Elizabeth Street

                                              Melbourne, VIC

     
c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
esc
cancel