DroidForums.net is the original Verizon Android Forum! Registered Users do not see these ads. Please Register - It's Free!
Results 1 to 10 of 10

Thread: How (and why) to configure Windows not to hide file extensions

  1. Chief Droid Scientist
    MotoCache1's Avatar
    Member #
    83203
    Join Date
    Jun 2010
    Posts
    530
    Liked
    6 times
    Phone
    A855 / MB810
    #1

    How (and why) to configure Windows not to hide file extensions

    In this guide I'm going to cover how and why to unhide "known file extensions" in Microsoft Windows. Supporting Microsoft Windows "features" is a good bit outside of the primary mission here in the Droid Labs, but this particular one so frequently causes trouble that I decided it had to be done.

    Note: If you don't really understand filenames and directories and extensions and such (and maybe even if you think you do, but aren't sure), jump down to the bottom, read the "A (not so) brief education in some related concepts" section and then come back here. That will help avoid you being lost just due to terminology issues.

    OK, so on with it...

    I'm not completely sure when Microsoft started this insanity, but at some point after Windows NT Microsoft decided its users were too stupid to handle file names with extensions and that it would be better if Windows kept the extensions out of users hands by hiding them if they were "well known" (like .exe, .zip, .txt, etc.). If I had to guess it was because they got tired of making all that money answering support phone calls (they charge for support) when some noob renamed "Instructions.txt" to "My Instructions" (with no extension) and then discovered it was "broken" because double clicking on it failed to load the file up in Notepad like it had before. Regardless of the factual basis for the decision, at this point all Microsoft Windows end user OS's ship defaulted to what I call "dummy mode" where the file extensions are hidden. Personally I think this is a horrible trojan horse risk because clever evildoers can make a .exe file with an icon set to look like Notepad's icon and then the unwary user thinks they are opening a text file when they are really running an executable. Sure Windows will warn them they are running an executable when they click it, but honestly, if they can't be trusted to see their file extensions, are they really going to read that warning and attach any significance to it? But I digress.

    Anyway, what does this have to do with all of us, and specifically our purpose here in Droid Labs? Well, a lot of what we do here is messing with custom recovery packages that you install on your phone. These are ".zip" files and if you are running SPRecovery, then whatever the name of the file was when you got it, when you put it on your phone it needs to be specifically named "update.zip" in order for SPRecovery to find and run it. And therein lies the problem. Say the file is sitting on your computer as "RootMyPhone.zip" and you need to copy it to SD card and have it named "update.zip" (not Update.zip, or UPDATE.zip or update.ZIP either by the way, but that's a separate issue).

    The usual, more non-geek friendly procedure for getting this file to your SD card goes something like this:

    1. Attach phone to computer via USB
    2. Tell phone to "mount" to allow copying of files to and from your computer
    3. Copy file from your computer to the drive letter that is your phone
    4. Rename the file on the phone to update.zip

    Step 4 is where we run into trouble.

    You see, unless you have already changed the default, after you copy the file to the phone, it will look like this in Windows:
    So when you rename it, if you don't understand anything about file extensions, you're going to follow directions and rename it and type in "update.zip" for the new name -- making it look like this:
    Of course you've not done what you thought you were doing at all because Windows was "helping" you by making sure that you couldn't change the file extension. So what you really did was rename the file from "RootMyPhone.zip" to "update.zip.zip". If we turn off the stupid "hide extensions for known file types" setting we can see our error:
    Well, "update.zip.zip" and "update.zip" sure aren't the same thing, so of course SPRecovery is not going to find your file and you're going to get an error and be lost and confused.

    If you'd had "hide extensions for known file types" turned off at the outset it would have looked like this when you first copied the file:
    Then, when you renamed the file and typed in "update.zip" for the new name, although it would look the same as it did back when you had extensions hidden (and it was named wrong), now it actually has the right name.

    As a side note, I don't actually use the "icons" view shown in these screen shots - I only used that mode here because that it eliminates extraneous information and because I know a lot of people do use that mode. I use the "Details" mode (View, Details) which lets you see more information about the file and looks like this:
    If for no other reason than those presented above, I think every person who is even slightly above "helpless end user" should turn off "hide extensions for known file types" and then just don't go changing the extension of a file unless you know what you're doing and are doing so for a good reason. Anybody that is not even slightly above "helpless end user" hopefully isn't here reading this guide, much less tampering with the guts of their phone.

    Hey, you're probably running a rooted phone -- the least you could do is know the real names of the files on your PC, right?

    OK, so if you're convinced and tired of hearing me yammer about it, here's how you do it. It's easy and you can always set it back if you hate it.

    Windows XP (yes, even my beloved XP defaults to dummy mode)

    1. Click Start
    2. Settings
    3. Control Panel
    4. Folder Options
    5. Click the "View" tab
    6. Scroll down a little and uncheck "Hide extensions for known file types"
    7. Click OK


    Windows Vista and Windows 7

    1. Click Start
    2. Control Panel
    3. Appearance and Personalization
    4. Folder Options
    5. Scroll down a little and uncheck "Hide extensions for known file types"
    6. Click OK


    There. You should never suffer with not knowing what you've named a file again. Don't you feel better?

    You don't read to need the section below unless any of the above confused you.


    A (not so) brief education in some related concepts

    Some terminology:

    Given a file whose complete name is:
    c:\data\droid\RecoveryPackages\BootAnimation.zip
    path - the path is the first part of the complete name which identifies the path one travels through the nested subdirectories to find the file. In Windows, a local path ("c:") followed by zero or more directory (also called "subdirectory") names. In this case we must traverse 3 directories to reach our file. In the root of the c: drive (the topmost, or lowest level depending upon how you visualize directory trees) we find the "data" directory. Inside that directory we'll find the "droid" directory. Inside that directory is the "recovery_packages" directory, and within that directory (finally) we find the file "MC1_TATDYLF_Boot_Animation.zip". So, the "path" to this file is the "c:\data\droid\RecoveryPackages\" part. Technically the "trailing slash" (the last backslash in that string) should be used when referring to the path as that is what positively identifies that the last name in the string ("RecoveryPackages") is a directory and not a file. That said, practices vary as to whether a given application that asks for a path name expects the trailing slash. If you're ever asked for a path name and then the application builds a complete file name from it and it looks like this "c:\data\droid\RecoveryPackages\\BootAnimation.zip" then the developer that wrote the app assumed you would not be providing the trailing slash and added it when concatenating the file name to the path you provided. Windows is generally tolerant of this unless it happens at the beginning of the path (because a double backslash at the beginning of a path has a special meaning to Windows).

    name - the name is the portion of the complete file name that follows the last backslash. In our example, the name would then be "BootAnimation.zip".

    basename - the basename is a portion of the name. It is the portion up to, but not including the last period in the name, and whatever follows it. So, for the name "BootAnimation.zip", the basename is "BootAnimation".

    extension - the extension (sometimes called the suffix, but not usually in a Windows context) is the portion of the name which follows the last period in the name (if the name contains a period). If the name does not contain a period then it has no extension. This is fairly uncommon in Windows, but very common in Linux (for reasons discussed elsewhere in this guide). So, for the name "BootAnimation.zip", the extension is "zip" -- or some would say ".zip" (pronounced "dot zip").


    Some key differences between Windows and Linux file names:

    While Windows and Linux both feature complete file names that contain a path, a name, and optionally an extension, there are numerous differences between the way the two environments use file names.

    1. A complete Windows file name begins with a "drive letter" while a Linux complete file name does not (Linux uses "mount points" to make different devices or partitions appear as though they are merely one of the many directories contained in the root directory of the system).

    2. Windows uses backslashes ("\") to separate directory names in a path while Linux uses front slashes ("/").

    3. Files in Windows almost always have an extension whereas in Linux, files with no extension are common. The reason for this is that in a Windows system the extension is what tells the Operating System (OS) what type of file it is and how to handle it. For non-executable files, the OS generally decides what to do with it by looking the extension up against a list of "file type associations" to see what executable should be used to open that file. Linux however looks inside the file to determine what type of file it is. If a file is not an executable and needs another file to "handle" it, a header in the file will specify the executable that should be used.

    4. File names are not "case sensitive" in Windows but they are in Linux. This means that if you have a file named "c:\data\droid\RecoveryPackages\BootAnimation. zip" in Windows, you can refer to it as "C:\DATA\DROID\RECOVERYPACKAGES\BOOTANIMATION. ZIP" and Windows will still find it. It also means then that you cannot have two files whose names differ only in their capitalization in the same directory in Windows. In other words, in a given directory you can't have an "abc.zip" and an "ABC.zip" -- to Windows those would both be the same file. In Linux however, if you have a file named "/sdcard/SomeFile.txt", you must enter the name capitalized exactly as shown or Linux will not find it. In Linux you absolutely can have an "abc.zip" and an "ABC.zip" (as well as an "aBc.zip" and every other permutation) in the same directory.

    5. Windows and Linux handle spaces inside file and/or directory names differently. Spaces in file names are not much of an issue when opening and closing files through a Graphical User Interface (GUI) as you are picking the file explicitly from a list and the only piece of information involved is its name. But in Linux (and Windows too if you're an old fart like me, or a true geek) a lot of work is done at the command line where the OS must parse what you've typed and decide what part of it is the command and what part is a parameter and where each of those sub-strings within what you've entered begins and ends.

    Consider this Windows command line command: type test file.txt

    If you enter that command, expecting to output the contents of the file "test file.txt" to the screen, you might be surprised when you get this output instead:

    The system cannot find the file specified.
    Error occurred while processing: test.
    The system cannot find the file specified.
    Error occurred while processing: file.txt.
    Unfortunately the command line parser saw the space between "test" and "file.txt" and assumed you wanted to view the contents of one file named "test" and then view the contents of a second file named "file.txt". So you need a way to tell the parser that the file name is actually "test file.txt".

    The correct way to do this is to type the command like this: type "test file".txt

    By putting "test file" in quotes the parser knows that is all part of the basename. You could also do this: type "test file.txt"

    That second example however is not as universally correct because it succeeds for a different reason (one that is not universally applicable). The second example succeeds because having quotes around the entire string tells the parser "this is all one single parameter to be passed to the type command". When you start dealing with spaces inside of directory names in paths, and more complex issues, you should find that quoting just the directory name or basename that contains the space is universally functional. More complex example of a command against a file with a path containing spaces and a name containing spaces, properly quoted for use at the command line:

    type c:\"Program Files"\Motorola\"RSD Lite"\"CDMA Test Commands Version9_9".tdb
    In Linux, files with spaces in the name are a lot less common. You'll more often see underscores ("_") used to put some spacing in a file or directory name. For those occasions where a file with a space in the name is encountered, in Linux you can use the same quoting techniques presented above to refer to them, but there is also another way. In Linux you can tell the command parser not to treat a space as a delimiter by "escaping" it. In character based tasks, "escaping" a character means flagging the character as needing to function as a normal ASCII character, and not having some special function that is typically associated with it. In many environments (not Windows) the standard escape character is the backslash ("\") and such is the case with Linux. So if we had a file in Linux whose complete name was "/system/bin/recovery files/2010-08-31 0500.tar.gz", and we needed to refer to it at the command line, and didn't want to use quotes, we could type it like this:
    /system/bin/recovery\ files/2010-08-31\ 0500.tar.gz
    Since each space is preceded by a backslash, the parser will understand that the command/parameter/filename has not yet ended, but instead contains an actual space character.
    Attached Thumbnails Attached Thumbnails How (and why) to configure Windows not to hide file extensions-ss1.jpg   How (and why) to configure Windows not to hide file extensions-ss2.jpg   How (and why) to configure Windows not to hide file extensions-ss3.jpg   How (and why) to configure Windows not to hide file extensions-ss4.jpg   How (and why) to configure Windows not to hide file extensions-ss5.jpg  

    Last edited by MotoCache1; 09-08-2010 at 06:05 PM.
    Droid 1 - the "unbrickable" droid.
    FRG22D - stock, rooted, ChevyNo1 LV 1.1GHz kernel, SetCPU 2.0.2, Superuser 2.3.6.1

    Droid X, Droid 2, Droid 2 Global (Band Unlocked), Droid Pro Global (Band Unlocked)

    Recommended reading for newbies: How to ask questions the smart way
  2. Rescue Squad
    Tallica's Avatar
    Member #
    48266
    Join Date
    Mar 2010
    Location
    Middleboro, MA
    Posts
    3,259
    Liked
    6 times
    Twitter
    Tallica21
    Phone
    GSIII-Rooted
    Premium Member
    #2
    Another great guide/writeup Moto! Hopefully this will clear up alot of the confusion members are having renaming files. The Rescue Squad thanks you for all you do here.
  3. Super Moderator
    jntdroid's Avatar
    Member #
    6110
    Join Date
    Nov 2009
    Location
    TX
    Posts
    6,438
    Liked
    808 times
    Phone
    Verizon S4
    Premium Member
    #3
    I'm going to go out on a limb and say that you might have some technical writing background?
    "...life is 10% what happens to me and 90% how I react to it."

    Guidelines of Conduct
    The only dumb question is the one not asked.
  4. Chief Droid Scientist
    MotoCache1's Avatar
    Member #
    83203
    Join Date
    Jun 2010
    Posts
    530
    Liked
    6 times
    Phone
    A855 / MB810
    #4
    Quote Originally Posted by jntdroid View Post
    I'm going to go out on a limb and say that you might have some technical writing background?
    True. But I'm a developer at my core and we hate documenting things. It sucks that I'm halfway decent at it.
    Droid 1 - the "unbrickable" droid.
    FRG22D - stock, rooted, ChevyNo1 LV 1.1GHz kernel, SetCPU 2.0.2, Superuser 2.3.6.1

    Droid X, Droid 2, Droid 2 Global (Band Unlocked), Droid Pro Global (Band Unlocked)

    Recommended reading for newbies: How to ask questions the smart way
  5. Premium Member
    wricks's Avatar
    Member #
    65438
    Join Date
    May 2010
    Location
    Burlington, NC
    Posts
    374
    Liked
    1 times
    Phone
    OG Droid, Charge, Bionic, S4
    Premium Member
    #5
    Excellent write up.

    This thread needs to be linked to the hacks section for use by those who are just learning to root. I know it would have saved me a major headache back when I started. Thought my brand new phone was toasted because SPRecovery couldn't recognize the update file due to the additional .zip that Vista added.

    You are the man.......

  6. Moderator/RS
    dmacleo's Avatar
    Member #
    26773
    Join Date
    Jan 2010
    Location
    Etna,ME
    Posts
    1,482
    Phone
    droid
    Premium Member
    #6
    fwiw reasoning, right or wrong, was to prevent a rename removing associations.
    I always set up to show extensions, in end just so much easier.
    Dave MacLeod



  7. Developer Relations
    guidot's Avatar
    Member #
    36269
    Join Date
    Feb 2010
    Location
    Massachusetts
    Posts
    7,363
    Liked
    826 times
    Twitter
    guidot42
    Phone
    i605/i9250/i515/XT862/A855
    Premium Member
    #7
    Ever since I've owned a PC I've "unhidden" extensions. It's the right thing to do.

    1.Need to Flash a ROM? - Flashing ROM - Best Practices
    2.How-To Setup a ROM/MOD/Theme Thread with prefix - Setup ROM/MOD/Theme Thread
    3.Guidelines of Conduct on Droidforums.net - Guidelines of Conduct
  8. Developer Relations
    guidot's Avatar
    Member #
    36269
    Join Date
    Feb 2010
    Location
    Massachusetts
    Posts
    7,363
    Liked
    826 times
    Twitter
    guidot42
    Phone
    i605/i9250/i515/XT862/A855
    Premium Member
    #8
    What is that about? ^^

    -Droid Does

    1.Need to Flash a ROM? - Flashing ROM - Best Practices
    2.How-To Setup a ROM/MOD/Theme Thread with prefix - Setup ROM/MOD/Theme Thread
    3.Guidelines of Conduct on Droidforums.net - Guidelines of Conduct
  9. Chief Droid Scientist
    MotoCache1's Avatar
    Member #
    83203
    Join Date
    Jun 2010
    Posts
    530
    Liked
    6 times
    Phone
    A855 / MB810
    #9
    Quote Originally Posted by guidot View Post
    What is that about? ^^
    I decided it was about spam and nuked it.
    Droid 1 - the "unbrickable" droid.
    FRG22D - stock, rooted, ChevyNo1 LV 1.1GHz kernel, SetCPU 2.0.2, Superuser 2.3.6.1

    Droid X, Droid 2, Droid 2 Global (Band Unlocked), Droid Pro Global (Band Unlocked)

    Recommended reading for newbies: How to ask questions the smart way
  10. Droid Ninja
    teddyearp's Avatar
    Member #
    27105
    Join Date
    Jan 2010
    Location
    Randle, WA
    Posts
    1,801
    Liked
    19 times
    Phone
    SamsungŪ SCH-I515
    #10
    Nice! But I just had to say, if you don't do this or know how or why, then don't even bother messing with your phone.

Links

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Similar Threads

  1. Phone Extensions - Prompt to Dial Ext ??
    By FearLES in forum Android General Discussions
    Replies: 5
    Last Post: 03-26-2011, 12:53 PM
  2. Best Way to Configure E-Mail
    By jeffc103193 in forum Droid X General Discussions
    Replies: 3
    Last Post: 07-16-2010, 10:55 AM
  3. Configure Gmail
    By Yar in forum Android Applications
    Replies: 0
    Last Post: 12-11-2009, 02:10 PM
  4. Contacts with extensions
    By nickthehuk in forum Android General Discussions
    Replies: 0
    Last Post: 12-10-2009, 09:07 PM
  5. Connecting to a Windows file share?
    By Nolubez in forum Android General Discussions
    Replies: 1
    Last Post: 12-02-2009, 12:40 PM

Search tags for this page

nmc ext

,
nmc ext android
,
nmc ext folder android
,
nmc-ext
,
nmc.ext
,
what does nmc ext stand for
,

what is nmc ext

,
what's nmc ext
,
why does windows hide file extensions
,
windows 7 never hide extensions for known file types
Click on a term to search our site for related topics.

Tags for this Thread

Find us on Google+