小编Moh*_*man的帖子

适用于Delphi开发人员的SVN

我之前发布了一个问题,远离VSS,我在其中询问了使用VSS的Delphi开发人员的最佳VCS控制.大多数开发人员似乎都使用带有TortoiseSVN的svn.我试了好几天,我觉得这是最好的选择.

但是,我仍然对svn的工作方式有些困惑,所以这里有一些我想回答的问题:

  1. 我可以使用vss使用的旧锁定方式(checkout-modify-checkin)吗?

  2. Delphi表单有两个文件(MyForm.pas,MyForm.dfm).当我向表单添加任何控件时,两个文件都将被修改,所以我想提交"myform.pas"并让"myform.dfm"也提交它.我在这里错过了什么吗?

  3. 这同样适用于Delphi项目文件.因为这与其他文件链接,所以当我更改项目文件时应该提交所有文件.

  4. 您在TSVN中标记了哪些文件被忽略,因此TSVN不会查找像(.dcu, .exe,...)这样的文件,我可以将它从一个Pc导出到其他文件吗?

我现在必须改变我在vss风格中思考的方式,并且需要将其更改为SVN风格,但是使用vss,所有内容都在IDE中管理,这非常棒;-).

更新:

5.如果我提交Delphi表单(.pas和dfm)并发现之前已经更新了一个版本,如果在该表单和单元中添加了一些新的控件和事件,那么如何解决冲突(这需要Delphi开发人员使用svn ).

svn delphi version-control tortoisesvn

5
推荐指数
2
解决办法
8334
查看次数

Delphi中有类似PHP的vardump的函数吗?

我已经放弃了 Delphi 7 调试器,并且非常依赖于输出调试字符串。是否有一个标准函数可以调用以将对象的内容作为字符串获取,就像设置断点时调试器会执行的那样?

delphi debugging delphi-7

5
推荐指数
1
解决办法
2335
查看次数

在delphi中创建"移动/生活"UI的库是什么?

在阅读delphifeeds的同时,我发现了delQuery,它允许人们非常简单地在他的表单上获得一些漂亮的动画.

我想知道那里是否有其他类似的图书馆以及你对它们有什么经验?

(我正试图找到一种方法,使我的应用程序在GUI方面更活跃;当你悬停它们时增长的按钮,那种动画但具有良好的编程接口)

delphi user-interface

5
推荐指数
1
解决办法
338
查看次数

如何直接打印Fastreport而不显示"打印"对话框

我使用Fastreport 4.我需要直接打印到打印机而不显示Print Dialog.我已取消选中"打印选项"中的ShowDialog,但它会一直显示打印对话框.任何帮助将非常感激.

delphi fastreport

5
推荐指数
1
解决办法
2万
查看次数

如何使用rtti列出属性的属性?

我目前正在使用此代码,但没有列出任何内容.我错过了什么?

program ListAttrs;

{$APPTYPE CONSOLE}

uses
  Rtti,
  SysUtils;

type
  TPerson = class
  private
    FName: String;
    FAge: Integer;
  public
    [NonEmptyString('Must provide a Name')]
    property Name : String read FName write FName;
    [MinimumInteger(18, 'Must be at least 18 years old')]
    [MaximumInteger(65, 'Must be no older than 65 years')]
    property Age : Integer read FAge write FAge;
  end;


procedure test;
var
  ctx       : TRttiContext;
  lType     : TRttiType;
  lAttribute: TCustomAttribute;
  lProperty : TRttiProperty;
begin
   ctx       := TRttiContext.Create;
   lType     := ctx.GetType(TPerson);
   for lProperty in lType.GetProperties …
Run Code Online (Sandbox Code Playgroud)

delphi attributes rtti delphi-2010 delphi-xe

5
推荐指数
1
解决办法
2121
查看次数

如何处理大型字符串网格?

我发现我可能不得不使用少于10列的字符串网格,但大约有5万行.

实验表明它是一个非常反应迟钝的CPU.

有什么指针吗?

代码或组件?

最好是Delphi(7)内置或TMS(我有许可证)或FOSS(用于商业用途).


更新:请不要只是告诉我使用虚拟树视图等.请告诉我原因,以便我可以学到一些东西.谢谢.

delphi

5
推荐指数
2
解决办法
1542
查看次数

Delphi内联汇编程序指向结构的指针

嗨人们有一种方法,我可以直接从内联汇编程序访问指向结构成员的指针我试过这个

procedure test(eu:PImageDosHeader);assembler;
asm
    push eu._lfanew
end;
Run Code Online (Sandbox Code Playgroud)

它不会编译,但如果我使用它

procedure test(eu:Pointer); 
var   
 xx:TImageDosHeader;
 begin    
 xx:=TImageDosHeader(eu^);  
 asm
     push xx._lfanew
 end;
 end;
Run Code Online (Sandbox Code Playgroud)

它工作得很好.任何想法如何通过内联asm中的指针访问结构?是优化代码的问题

delphi assembly

5
推荐指数
1
解决办法
1070
查看次数

将TortoiseSVN与Redmine集成

我正在尝试将Redmine与TortoiseSVN集成,但我无法做到这一点,因为TSVN总是给我这个错误:

"没有可用的问题跟踪器提供商."

我按照以下步骤操作:

  • 在我的项目文件夹属性中,我添加了'bugtraq:url - > http://myweb/../issues/show/%BUGID%'
  • 在Redmine设置中,我在存储库选项卡中添加了SVN,Redmine显示我的存储库没有任何问题.

我不确定是否有任何遗漏的步骤或我必须做什么来进行整合.

或者我应该看看trac,因为它似乎更稳定并且有更好的支持?

svn tortoisesvn trac redmine issue-tracking

4
推荐指数
2
解决办法
1万
查看次数

Delphi:类中的记录

以下情况:

type
  TRec = record
    Member : Integer;
  end; 

  TMyClass = class
  private
    FRec : TRec;
  public
    property Rec : TRec read FRec write FRec;
  end;
Run Code Online (Sandbox Code Playgroud)

以下不起作用(左侧不能分配),这是可以的,因为它TRec是一个值类型:

MyClass.Rec.Member := 0;
Run Code Online (Sandbox Code Playgroud)

在D2007中,虽然以下内容有效:

with MyClass.Rec do
  Member := 0;
Run Code Online (Sandbox Code Playgroud)

不幸的是,它在D2010中不起作用(我认为它在D2009中也不起作用).第一个问题:为什么?故意改变了吗?或者它只是其他一些变化的副作用?D2007的解决方法只是一个"错误"吗?

第二个问题:您如何看待以下解决方法?使用安全吗?

with PRec (@MyClass.Rec)^ do
  Member := 0;
Run Code Online (Sandbox Code Playgroud)

我在这里谈论现有代码,因此必须进行的更改才能使其工作应该是最小的.

谢谢!

delphi records delphi-2007 delphi-2010

3
推荐指数
1
解决办法
3842
查看次数

Delphi-2010中仍然需要FastShareMem吗?

到目前为止,我正在使用Delphi 7进行开发.为了将fe TStringLists传递给我的DLL,我使用FastShareMem单元作为每个程序中的第一个单元,并且我开发了dll.

如果我应该迁移到Delphi-2010,FastShareMem仍然是必要的吗?

感谢您提供的任何见解.

delphi memory-management delphi-2010

3
推荐指数
1
解决办法
3104
查看次数