I have a C# application that is available online for download. However, when customers download it, there is a one .dll that I created which SOMETIMES becomes "blocked" and needs to be "unblocked" by going to the file properties and clicking unblock. The.exe won't run because this. I cannot figure out why Windows decides to block it.
I know that I can programmatically unblock the file as well by using Unblock-File in PowerShell or Streams.exe. I also know that by editing the ZoneIdentifier of a file, I can MANUALLY block files in order to somewhat reproduce the issue. I cannot however reproduce the issue by download. I've tried downloading my program from the website in Win10 & Win7, and have even edited the "Do not preserve zone information in file attachments" in gpedit as well, all to no avail.
My question is, why is it that SOMETIMES my .dll gets blocked when downloaded from the internet? How can I prevent this block from happening, by digitally signing the dll?
Am I doing something wrong when I package my C# solution? Is there a way to reproduce a particular download from being blocked?