这个问题与Delphi应用程序中自动使用某些Windows资源管理器功能的问题有关.
有没有办法在Delphi中自动使用metrix前缀格式化整数?不知何故自动获得像Windows资源管理器给出的结果?我的意思是自动将1024转换为1.0 K.
让我们说类似的话
FormatMetric('FileSize = %d', [26112], 1,'B')
// where the third parameter is the number of decimal digits
// and the fourth is the string that is appended
Run Code Online (Sandbox Code Playgroud)
将返回
25.5 KB
Run Code Online (Sandbox Code Playgroud)
当然我可以编写这个代码,但RTL中有这样的东西吗?
gnugettext和dxgettext 2是完全不同的工具吗?
重要提示:我收到了很多答案,谢谢大家.但所有答案都是答案而不是答案.我的问题与每个RDBMS的往返次数有关.一位经验丰富的人告诉我,MySQL的往返次数少于Firebird.我希望答案保持在同一领域.我同意这不是第一件要考虑的事情,还有很多其他的(应用程序设计,网络设置,协议设置......),无论如何我想回答我的问题,而不是评论.顺便说一下,我发现这些评论都非常有用.谢谢.
当延迟很高时("当ping服务器需要时间"时),服务器往返会产生差异.
现在我不想专注于在编程中创建的往返,而是在DB引擎+ Protocol + DataAccessLayer中"引擎盖"下发生的往返.
我被告知FireBird比MySQL有更多的往返.但这是我所知道的唯一信息.
我目前正在支持MS SQL,但是我想改变RDBMS,所以为了做出明智的选择,我想将这一点包括在"我的RDBMS比较特征矩阵"中,以了解哪个是最好的RDBMS选择作为替代MS SQL.
所以上面的粗体句子会让我更喜欢MySQL到Firebird(对于往返概念,不是一般的),但任何人都可以添加信息吗?
和MS SQL在哪里?是否有人能够"排名"主RDBMS的往返性能,或至少:MS SQL,MySql,Postegresql,Firebird(我对甲骨文不感兴趣,因为它不是免费的,如果我必须改变,我会改为一个免费的RDBMS).
无论如何,MySql(在stackoverflow上多次提到)有一个不明确的未来和一个非100%免费许可证.因此,我的最终选择可能会在PostgreSQL或Firebird上进行.
附加信息:
不知何故,你可以通过制作一个简单的列表来回答我的问题:
MSSQL:3;
MySQL的:1;
火鸟:2;
PostgreSQL的:2
(其中1表示好,2表示平均,3表示差).当然,如果您可以发布一些链接,其中每个RDBMS的往返比较,那将是很好的
更新:
我使用Delphi并计划使用DevArt DAC(UNIDAC),因此不知何故使用"相同"的数据访问组件,因此如果存在重大的往返差异,则由于使用的RDBMS不同.
进一步更新:
我有一个2层应用程序(插入中间层不是一个选项),因此通过选择优化的"往返端"RDBMS,我有机会进一步提高应用程序的性能.这种"优化"就像"购买更快的互联网连接"或"在服务器上放置更多内存"或"升级服务器CPU".无论如何,那些"优化"也很重要.
是否可以考虑将来在Delphi中使用自动垃圾收集器?在许多应用程序中,对何时释放对象进行高度详细的控制并不是那么重要,这只是一个需要关注的额外事情.
对于具有像java一样工作的垃圾收集器的应用程序,这将是有趣的.
它可以在项目选项中设置.
这可能与否?
注意:我不是故意像这里解释的那样手动创建它,我的意思是Delphi功能.
换句话说:是否可以将FastMM设置为垃圾收集器?
我开发了一个 BPM 软件,我想添加最终用户脚本逻辑。
我试着用一个例子来表达自己。
在 Process 中有 2 个变量(Price、ApplyDiscount、DicountAmount、Total)。
用户想以某种方式定义这个逻辑:
//Delphi code for explanation:
if ApplyDiscount then
Total := Price * DiscountAmount
else
Total := Price;
Run Code Online (Sandbox Code Playgroud)
由于我的应用程序是 SQL Server 客户端服务器应用程序,因此我还考虑了使用参数运行查询的想法,以便用户使用 SQL 语法来编写逻辑脚本并且它会起作用。我需要定义细节,但不知何故,这个想法是使用:Parameter语法来允许脚本从我的应用程序传递和接收值。
这肯定没问题,但我想知道是否有另一种方法可以在不编写我的脚本引擎的情况下做到这一点。
谢谢。
当我不在断点时,是否可以看到具有实时值的手表列表?
TDatamodule.即使控件返回到VCL线程(=当我按F9时),有没有办法在监视列表中看到它的值?
要在DB上使用Filestream,必须完成3个步骤:
1)启用服务器/实例级别
2)sp_configure在数据库级别启用()
3)创建一个varbinary(max)支持文件流的字段
使用T-SQL轻松完成(2)和(3)
(1)可以从SQL Server配置管理器手动完成,基本上我需要选中所有3个复选框:

(来源:sql-server-performance.com)
但是如何使其自动化?
我发现了这个“在VBScript中使用文件流”的技巧,除了使用VBScripts之外,还有另一种方法吗?可能只有2008R2才有可能吗?
万一VBScript是唯一的解决方案,可能有哪些弊端?
我试图开始使用OOAD,这个问题出现在我的脑海中,我不确定我能找到一个好的解决方案:(它是现实世界案例的超级隐形版本).
渔夫在有钓鱼竿的一个池塘钓鱼.每次发射钓鱼线时,有可能在有阳光和晚上1/20时捕获等于1/10的鱼.
要定义哪些类? 我会回答:渔夫,FishingRod,池塘,日(模拟夜晚和白天).
哪种方法? 我会回答:Fisherman.Launch(FishingRod),FIshingRod.TryToFish(Pond)返回布尔值
如何模拟可能性?谁具有可能性的责任?它不属于渔民或池塘.在这个例子中,只有日光的关系,在现实世界中它可能也与渔夫,钓鱼竿和池塘有关.
如何建模外部因素(日光)?
欢迎任何评论.代码示例.
更新:问题 的第一个评论和tdammers的回答迫使我更具体.正如我上面写的那样"它是现实世界案例的超级隐形版本",无论如何我要说我想要在以后增加复杂性,而不是超级增加它,让我们说增加它就足以让我列出的所有类都很好以上(例如,因为我记录了池塘里有多少鱼,渔民有多累,......).无论如何,对我来说最有趣的问题是"如何模拟可能性"和"外部因素".对于那些在OOAD中没有太多技能的人来说,这是一个新手问题.
我正在使用Delphi 2009.
在一个巨大的项目300多个单元,5个第三方组件,许多库,IDE经常被冻结几秒钟,经常当"intellisense"(我不记得它是如何调用)试图给我建议.
有没有办法改善表现?
我还会尝试以下改进:
1)格式化我的机器
2)升级到Delphi XE
但你能提出其他建议吗?
delphi ×9
sql-server ×3
c# ×1
debugging ×1
delphi-2009 ×1
delphi-xe2 ×1
fastmm ×1
filestream ×1
firebird ×1
ide ×1
java ×1
localization ×1
mysql ×1
oop ×1
pdf ×1
postgresql ×1
scripting ×1
vbscript ×1
watch ×1