是否有编译符号来检测紧凑框架?

pdi*_*ddy 3 .net c# windows mobile compact-framework

是否有编译符号来检测它是否在紧凑的框架平台上运行

cta*_*cke 11

您的问题中存在不连续性.你问的是一个编译符号,所以只在设计时存在,并在运行时检测一个条件.那么你的问题是你真正追求的是哪一个?

如果您想在运行时知道您是否在CF下,请检查Environment.OSVersion.Platform属性以查看它是否为WinCE.

if(Environment.OSVersion.Platform == PlatformID.WinCE)
{
  // this is CF
}
Run Code Online (Sandbox Code Playgroud)

在编译时,它不是那么简单.默认项目向导为PPC/WinMo项目添加编译符号"PocketPC",为WinCE项目添加"WindowsCE",为Phone7项目添加"WINDOWS_PHONE",因此您可以执行以下操作:

#if WindowsCE || PocketPC || WINDOWS_PHONE
// this is CF
#endif
Run Code Online (Sandbox Code Playgroud)

但没有什么可说的,开发人员无法删除该符号(或将其添加到桌面项目中).