vs2008在不同的操作系统下(如xp win7)下开发的程序可互相移植吗
vs2008在不同的操作系统下(如xp win7)下开发的程序可相互移植吗?
RT
比如我用 vs2008分别在xp和win7下开发出相同的一款程序,开发完后,把这款程序分别安装在不同的操作系统xp 和win7下(即在xp下开发的同时在xp和win7安装,在win7下开发的程序同时在xp和win7下安装),会不会出现不兼容的情况?
------解决方案--------------------
根据我的开发经历来讲,跟开发环境无关,跟运行的操作系统有关。
比如说:设置运行环境的语言
VISTA和WIN7系统调用下面的函数
SetThreadUILanguage(MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US));
XP调用的是另一个函数:
SetThreadLocale(MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US));
------解决方案--------------------
基本是可以的。二者没有太多区别
------解决方案--------------------
有可能会出现兼容性问题,主要看你的编程风格是否严谨,有些在xp上能运行才程序可以由于安全权限等问题在win7无法运行。《windows核心编程上》有说这类问题
------解决方案--------------------
你可以在开发的时候判断当前运行的系统类型啊,如果是XP,那么就调用XP的函数,如果是WIN7,
那么就调用WIN7的函数,这都可以做到,我就是这样处理的
------解决方案--------------------
主体上是相同的。除非你的应用涉及到了系统架构方面的差别(需要编写 Windows 地层函数)。
比如,开机登录,在 Win 2003 server 以下,是利用自定义的 Gina;而在 Vista以上的系统中,要用到 credential provider。如果你的软件要兼容所有系统,就要能够识别系统版本,安装相应的部件。
另外,就是一些 API 函数的版本问题。一般通过安装程序的识别处理来解决。
RT
比如我用 vs2008分别在xp和win7下开发出相同的一款程序,开发完后,把这款程序分别安装在不同的操作系统xp 和win7下(即在xp下开发的同时在xp和win7安装,在win7下开发的程序同时在xp和win7下安装),会不会出现不兼容的情况?
------解决方案--------------------
根据我的开发经历来讲,跟开发环境无关,跟运行的操作系统有关。
比如说:设置运行环境的语言
VISTA和WIN7系统调用下面的函数
SetThreadUILanguage(MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US));
XP调用的是另一个函数:
SetThreadLocale(MAKELANGID(LANG_ENGLISH,SUBLANG_ENGLISH_US));
------解决方案--------------------
基本是可以的。二者没有太多区别
------解决方案--------------------
有可能会出现兼容性问题,主要看你的编程风格是否严谨,有些在xp上能运行才程序可以由于安全权限等问题在win7无法运行。《windows核心编程上》有说这类问题
------解决方案--------------------
你可以在开发的时候判断当前运行的系统类型啊,如果是XP,那么就调用XP的函数,如果是WIN7,
那么就调用WIN7的函数,这都可以做到,我就是这样处理的
------解决方案--------------------
主体上是相同的。除非你的应用涉及到了系统架构方面的差别(需要编写 Windows 地层函数)。
比如,开机登录,在 Win 2003 server 以下,是利用自定义的 Gina;而在 Vista以上的系统中,要用到 credential provider。如果你的软件要兼容所有系统,就要能够识别系统版本,安装相应的部件。
另外,就是一些 API 函数的版本问题。一般通过安装程序的识别处理来解决。