编程语言 – 我应该将哪个开发平台用于桌面Windows应用程序?

在进行Web开发很长一段时间后,我面临着一个新的客户端,他希望在interweb之外运行一个简单的数据库应用程序.

他非常坚持使用微软产品. “我们不希望没有开放的开源”是他的立场.

自从我实际进行桌面开发以来已经有一段时间了,我的大多数工具都是生锈的,没有许可证,或者只是丢失了.我最近一直专注于L.A.M.P.应用程序,但这并没有完全转移回桌面环境.

一些选择:

database:  MysqL (my fav),Access,MSsql
language:  C++,VB,PHP,Java,C#

我一直倾向于Access / VisualBasic,不是因为我非常喜欢它,而是因为它很容易设置和部署.对于新手计算机用户来说,数据库服务器(MysqL,Mssql)可能太难以部署/维护.尽管从纯粹主义的角度来看,C语言是更好的语言,但引导应用程序(恕我直言)需要花费太多精力. Java太麻烦了(再次恕我直言).

一个考虑因素是成本.虽然我可以说服他获得适当的软件运行时许可证,但我可能无法让他购买必要的开发工具,当然,该项目还不足以证明可能无法再次使用的大量购买.

我非常感谢您对平台选择,开发工具和应用程序框架的贡献.

编辑09年5月23日

谢谢大家的好建议.

我已经选择了C#Express.到目前为止,我已经避免学习C#了,但是另一种语言是什么?我有一整周的时间来加快速度.

我对是否使用Access或MSsql(Express)数据库感到困惑.使用Access,我可以将数据库部署为独立文件,但MSsql要求安装数据库服务器. (据我所知)

客户端要求将应用程序安装在多个位置,其中一些位置是移动的,而不是连接到interweb.冒险的部分是协调数据库的所有副本,并确定哪个是非常规版本.

解决方法

我会选择 Express editions的C#和MSsql.免费且易于使用/设置/部署.这里有一些关于某些 general material的更深层链接,特别是关于在Windows应用程序中使用VS Express版本.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...