Assign the user Read permissions in the security tab of the file's properties. As long as the user is not a member of the local administrators group where the file is stored, they won't be able to change the file in any way.
You may need to disable permission inheritance via the advanced button in the security tab if the file or folder is inheriting permissions. When doing this, typically I copy the existing permissions then adjust as needed.
Set File Permissions:
1) Right-click the file in question, select Properties.
2) Switch to the Security tab.
3) Click Advanced.
4) Click the Change Permissions button (if needed.)
5) Uncheck the box that says Include inheritable permissions from this object’s parent.
6) Choose Add when prompted.
7) Adjust permissions as needed. Be aware that the user may be part of a security group listed here.
8) Click OK.
Check User Group Membership:
Workgroup environment
1) Go to Start and right-click Computer, select Manage.
2) Expand Local Users and Groups.
3) Select the Users folder.
4) Right-click the user account, select Properties.
5) Switch to the Member Of tab.
Domain environment
1) Open Active Directory Users and Computers.
2) Right-click the domain and choose find.
3) Enter the username and click Find.
4) Right-click the user account, select Properties.
5) Switch to the Member Of tab.
2Your assertion is not quite true. In Unix/Linux, setting read-only access to a file does not prevent rename or delete, though
mv
orrm
may prompt to confirm. To prevent rename and delete, the file's directory must be read-only (plus execute, or the user would not see the file at all). This is quite logical if you think about it. I am not sure how W7 behaves in this regard. – AFH – 2014-07-08T23:10:05.627