I have just purchased a laptop that has Windows 7 (Home Premium) installed
and I want to share files with my desktop computer that has XP installed. My
question is, how do I set up a ‘sharing’ folder on my laptop so that I can
transfer files and folder to it, from my desktop PC.
For the record, networking sucks.
Sorry to put it that bluntly, but when it comes to making things easy, safe,
and secure … it’s just not easy and often not secure.
It’s one of the reasons why I actually don’t deal with networking issues here on
Ask Leo! very often.
However, this comes up often enough that I’ll show you exactly what I do,
discuss why it’s not really secure, and throw out at least one alternative
approach that is both easy and secure.
Turn off the sharing wizard
Particularly in situations where you’re running different versions of Windows, I find that the so-called “sharing wizard” gets in the way more than it actually helps.
In Windows Explorer, press the ALT key to get the menu bar to appear if it’s not visible and click Tools, Folder options…, click the View tab, and scroll down to the “Use Sharing Wizard (Recommended)” option:
Make sure that it’s unchecked and click OK.
Creating a share
The primary concept behind Windows file sharing is called a “share”. A share is nothing more than a folder on a computer’s hard drive that you “share out” to the network. Other machines on your network can then connect to that share and, depending on the permissions you set up, read and write all the files and folders within that shared folder.
The easiest way to create a share in Windows 7 is to right-click on the folder in Windows Explorer, click Share with and then Advanced sharing…:
If Advanced sharing is not present and things like “Homegroup” are mentioned instead, then the Sharing Wizard hasn’t been turned off, as I recommended above.
In the resulting dialog box, click the Advanced Sharing… button.
In the next dialog box, make sure that Share this folder is checked:
As you can see, you can set a share name that is different than the folder name if you like. I find it easier to leave the name the same as the folder name. You can also add comments to describe the purpose of this particular file share.
Now, click the Permissions button.
By default, “Everyone” can only read the contents of the folder that you’re about to share. Users on other computers who connect to this share cannot alter or add any files or folders. If that’s all you need, click OK on all the dialog boxes that got you here – you’re done setting up your share.
If you want other computers to be able to write to this shared folder, then click the Allow checkbox for Full Control. Once again, OK your way back out – you’ve set up your share.
Note that any machine on your local network will be able to access the contents of this folder. As you can surmise from some of the options that I’ve skipped over, there are techniques to restrict access, but those techniques are where things get complicated and quickly break. At home in what we can assume is a network of essentially trusted users, I strongly recommend keeping things simple.
Connecting to a share
On the remote computer, there are naturally a couple of ways to connect to the share that you’ve just created. I’ll use Windows XP as my remote, but the fundamentals are the same in Vista and 7 as well.
In Windows Explorer, expand My Network Places, Entire Network, Microsoft Windows Network, your machine’s workgroup name, the name of the machine on which you created the share, and you should see a list of shares:
Right-click the share and click Map Network Drive…:
Select the drive letter that you want that shared folder on the other machine to appear as and click Finish. In this example, Drive “Y:” on our Windows XP machine is connected to the ExampleSharedFolder that we created on the Windows 7 machine.
I’ve found “Network Places” to be problematic at times, so instead of navigating through all of that, you can also just click on Windows Explorer’s Tools menu, and the Map Network Drive… item there:
In this case, the second field, which was filled in for us before, is now empty. Type in “\\” followed by the name of the machine that has the shared folder followed by “\” and the name of the share that we created. In our example here, that would be \\Notenquad\ExampleSharedFolder. Select a drive letter, click Finish, and once again, the local drive letter on this machine now refers to the shared folder on the other.
Finally, I wouldn’t be true to myself if I didn’t tell you what I really do.
In a Windows Command Prompt, I’d type in the following:
Like the prettier UI above, that connects the drive letter Y: to the remote shared folder.
Easy(ish) but not very secure
What I just described is exactly what I do on my home network, but there are risks.
Any machine that successfully connects to my home network has access to all of the shares that I’ve created that way. You might even have noticed a drive “C” in an example above, which should send security concious readers running away screaming, because they’d correctly assume that I’ve shared out my entire C drive (with full control, no less).
That would be a security nightmare if I didn’t explicitly trust every other machine on my network.
The problem is, as I alluded to at the very begining, networking correctly and securely – particularly in a small home network – is extremely difficult and error prone. The net result is that I’ve taken the lazy way out, because I can get it to work.
I’m both ashamed that I would do so and frustrated that I would have to.
So my caveat to you is simply this: be careful. Understand the security ramifications of opening up a share to “Everyone”, particularly if they’re also given “Full Control”. Be selective of what you share; for example, do as I say, not as I do, and don’t share out your entire system drive.
One safer alternative
If all that you want to do is move files between machines, consider using a service like Dropbox or some of its competitors. Dropbox is both simple to install and configure and makes moving files around quite easy.