I thought my software should randomize config and install locations for security reasons? And also that I should add salt to binaries so that each binary has a unique hash. Also it should prompt users to change passwords every 72 hours and lock them out after two incorrect tries. Also, for database connections, it should require the connection to the database be on a non-default port. Also, it should not be possible to administer over SSH, only over telnet.
Or at least do as portable as possible. Just copy and paste a folder, and `dot net run` will be amazing....
Putting on my sysadmin hat: Please do this. Please.
Think about the people who have to install and maintain your software.
Talk with real sysadmins about how they deploy software if you don't have experience doing it. Think about how you'd deploy, remove, and update it on large numbers of machines-- particularly where the users don't have administrative rights or where the machines are automatically-provisioned "cattle".
Also, use off-the-shelf installer systems, if you can, versus rolling your own. The maintainability will be a lot better.