سلام
شما روی سیستم خودت بعد از کامپایل یه فایل exe به دست میاری که میری میزاری تو مسیر نصب برنامت در کامپیوتر مشتری و فایل قبلیتو پاک میکنی و خلاص!!!
با این کار موارد 1 و 4 که گفتی حل میشه!
برای تغییر دیتابیس هم همونطوری که شما تو برنامت دستورات select , ... رو اجرا میکنی میتونی دستورات Update برای جداول ، Alter برای Stored procedure و .... رو هم اجرا کنی تا دیتابیس هم آپدیت شود.
به همین راحتی!!
البته از طریق اینترنت و توسط خود برنامه هم این کار شدنیه که سختتره ولی شما برای راحتی کار و وقتی فاصله زیادی با مشتری داری با نرم افزار Team Viewer به کامپیوتر مشتری از راه دور وصل بشی و تمام تغییرات را انجام بدی ، کاری که اکثر شرکت های ایرانی میکنن!