前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >XSharp(X#)的编译器选项(一)

XSharp(X#)的编译器选项(一)

作者头像
firstxinjie
发布2025-03-20 16:23:41
发布2025-03-20 16:23:41
620
举报
文章被收录于专栏:X#(XSharp)X#(XSharp)

使用过 VFP 的几乎没考虑过“编译器选项”这个问题。我也同样如此。因此,当我第一次接触这个概念的时候是有瞬间的懵逼。《X# 中使用 VFP 方言常用的编译器选项》一文的原始内容,来自官方论坛中开发组人员的回帖。

现在,是时候对这一问题梳理一下了。

XSharp(X#)的编译器选项在文档中多达几十个,那么,在生成(VFP中通常的说法是:编译)项目时该在哪里进行设置并如何选择呢?

事实上,在 XSharp(X#)中,有两种方式来生成项目:命令行方式和交互方式。但是具有 VFP 技术背景的大多数人,更多的是习惯交互的方式。因此,只需在 VS IDE 中打开项目的属性进行一些设置并点击工具栏中的“启动”按钮/F6 即可。

下面是项目属性窗口中各项的详细解释。

Application(应用程序)

Dialect(方言)

编译器选项:dialect

解释:选择编译此项目时要使用的编译器方言。更改方言也可能会更改语言页面上的 'Allow Named Arguments' (允许命名参数)设置。

有效选项:有效选项包括 Core、VO、Vulcan.NET、Visual FoxPro、xBase++ 和 Harbour。

Suppress default Win32 manifest(禁止默认的 Win32 清单)

编译器选项:nowin32manifest

解释:如果启用此选项表示不要在可执行文件中嵌入任何应用程序清单。

对于具有 VFP 技术背景的开发人员来说,应用程序清单对大多数人是很陌生的概念。但是,他们肯定会对一个问题很感兴趣:如果显示器的显示比例不是 100%,例如,是 125%,那么,在 EXE 运行时,UI的显示会显得比较模糊。当然,我已经在 VFP 中解决了这一问题,参见:TQ框架解析(九):框架应用对 OS 和高清大屏的兼容。所以,在 XSharp 中,我自然很关注这个问题。但是解决起来,比我想象的更容易。因此,我在项目中添加了一个自定义的清单文件,经过我的测试,无论是否勾选这个选项,生成的 EXE 都包含自定义的清单文件。

Prefer native resource over managed resource(优先选择本地资源而非托管资源)

编译器选项:usenativeversion

解释:如果启用,编译器将使用 Win32 资源文件中提供的本地 Win32 版本资源,而不会从程序集属性中生成资源。

在我学习的过程中,我从没关注过这个选项,也没有勾选。但是好像一切都很顺利。也许我还没有理解相关的概念......

Vulcan Compatible Managed Resources(Vulcan 兼容管理资源)

编译器选项:resource

解释:将指定资源嵌入输出文件。

作为具有 VFP 技术背景的人,我估计可以忽略这个选项,也就是不选择。也许以后会发现是否启用这个选项对生成的 EXE 有多大的影响......

未完待续......

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 xinjie的VFP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档