Update 19.Jan 2016
With Windows 10 and El Capitan this seems to work quite well within my little network at the moment.
The original post, try it if you want, YMMV.
I had some issues transferring files from a 10.9.4 Mavericks Mac to a Windows 8.1 desktop PC. The network was good, connection ok, and the account on the PC was valid. When I connected to the SMB share on the desktop PC from the Mac it seemed like it would work fine because a password prompt appeared, then available mountable folders. However the finder window would try updating the share in infinity and would not work. Maybe it worked 1 out of 25 times or so.
I can not claim that I have deep knowledge about the inner workings of SMB. What I do know is that people have some issues with this. Some say its an Apple bug but I don’t know.
To solve this Windows and OS X filesharing issue I had to add two registry DWORD entries using regedit on the Windows PC like so…:
Windows button + R and type regedit
Right click and select DWORD (32-bit Value)
Create Smb2CreditsMax and give it a decimal value of 16384
Create Smb2CreditsMin and give it a decimal value of 768
Should look something like this (click for bigger) when you are finished. My system do at least.
I am not sure what this really does, it solved my Windows and OS X filesharing /directory listing issues at least. I would probably not do this regedit in production or for a customer. If you are reading this and know what this does please leave a comment.
You could always force your Mac to use SMB1 instead, giving you slower transfer speeds but it should at least be stable. When connecting to your windows share type cifs://ip-or-servername instead of smb://ip-or-servername
Another option is to create a nsmb.conf file on your Mac. Open a terminal window. We are about to do some “hacking”!
Paste this line, into the terminal window. Make sure you copy the entire line, if you make one single error this won’t work.
echo "[default]" >> ~/Library/Preferences/nsmb.conf; echo "smb_neg=smb1_only" >> ~/Library/Preferences/nsmb.conf
Just remove the file to revert the changes, like so in the terminal window:
Make sure you have an active account on your Windows computer with a password set. Always check the easy stuff first.
I am mainly publishing this online for my own use. If you decide to follow my instructions please do so but I take no responsibility if you do something stupid. As I said, this worked fine for me but there is nothing that says that this has to work for you. If it does, great! 😉