Drag&Drop feature for uploading multiple files does not work in Internet Explorer in SharePoint 2010 environment. For some users this feature is disabled/hidden. However, it’s avalaible for other users in the company.
Things to check
- It works only in IE
- Internet Security is too high (doesn’t allow to run ActiveX controls)
- Microsoft Office is not installed on the computer
There is a KB from Microsoft that sums it up.
However, I experienced one other issue. These computers had one thing in common, they all had Office suite reinstalled (from 2003 to 2010). As a consequence, in Internet Explorer there was an old version of ActiveX control library (STSUpld UploadCtl) registered. You can check it by:
- Open Internet Explorer
- Tools | Manage add-ons
- From drop down list choose All add-ons
- Find STSUpld.UploadCtl | right click on in and choose More information
- Compare Version and Folder.
Version should start with 14.* (or 15.* in case of Office 2013). Folder path should head to Office14 or Office15 folder.
It’s necessary to fix old reference and replace it with current one (based on the version of Office installed).
It can be done by:
- Completely uninstalling old version of Office and reinstalling current one
- If it’s enabled, then in window More Information click on Remove
- Using RegSvr32 command to re-register DLL StsUpld.dll
I was looking for a nice way how to force browsers to refresh its cached version of files and reload script files after the change occured.
Usually we link JS files or CSS files like this:
If you want to force refresh, you can amend parameters to url, ie.
Well, this is manual way, so how do it in automated way, so I do not have to care about it? There is several ways how to do it, I will just mention one, which is simple and reliable and you do not have to remember to increase anything upon deployment. (it’s not my idea, thanks to Adam Tegen and his answer in stackoverflow). I took the liberty to change it so it’s possible to use in ASP.NET webforms as well.
public static class VersionLinkHelper
public static string GetVersion(string fileName)
var context = HttpContext.Current;
if (context.Cache[fileName] == null)
var physicalPath = context.Server.MapPath(fileName);
var version = "?v=" +
context.Cache.Add(physicalPath, version, null,
context.Cache[fileName] = version;
return fileName + context.Cache[fileName] as string;
In ASP.NET page link the file as: