I have seen several comments about auto-save in emacs on Windows for TRAMP.
The symptoms are described here: http://emacs.1067599.n8.nabble.com/Can-t-create-auto-save-files-when-using-tramp-on-Windows-td412612.html
I have a likely diagnosis based on my system's behavior.
Local: emacs 25.1 (via Vincent Goulet)
Tramp with plink
Remote: redhat derivative
Typical error (username, filenames are substituted)
Auto-saving codefile.py: Opening output file: Invalid argument, c:/Users/Me/AppData/Local/Temp/#!plink:RemoteHost:!home!Me!RemoteDir!codefile.py#
I had initially thought the uniquify argument could be made a hashing or safe conversion method, but it appears that I would have to override things deep in TRAMP, and that others might be having this problem as well.
My short term workaround is to turn off auto-save in TRAMP buffers with
(cons tramp-file-name-regexp nil))