标签: delphi-2007

6
推荐指数
2
解决办法
3513
查看次数

如何批量转换bdsproj到dproj?

我们最近从Delphi 2006升级到Delphi 2007,项目文件从更改.bdsproj.dproj.

到目前为止,我的研究表明,为了创建.dproj,需要在D2007 IDE中打开现有项目.我们有超过400个.bdsproj文件,因此手动执行此操作并不实用.

我想出的过程是使用以下命令从命令行打开所有项目:

find . -name *.bdsproj -exec bds.exe -pDelphi -ns -m "{}" ";"
Run Code Online (Sandbox Code Playgroud)

这是不理想的,因为它很慢(等待BDS加载,等待编译发生,等待BDS关闭,......).

有没有一种有效的方法将多个转换.bdsproj.dproj

注意:上面命令行中的'find'是类似UNIX的查找(例如MKS或GNU),它搜索文件,而不是Windows查找文件中搜索文本.

delphi delphi-2007

6
推荐指数
1
解决办法
1965
查看次数

Delphi从RAD Studio升级到Delphi XE

我们正在考虑从Rad Studio 2007升级到Delphi XE,并且需要让老板相信成本是合理的.我很感激能够帮助我回答这个问题的评论:"Delphi XE带来了哪些内容让升级成为值得的?"

问候,彼得

delphi upgrade delphi-2007 delphi-xe

6
推荐指数
1
解决办法
1171
查看次数

如何在数组中找到最小和最大的数字?

您好,我怎样才能在delphi中找到最小和最大的数字?

假设我有10个不同的数字存储在一个数组中:

如何在阵列中找到最大数量和最小数字?

arrays delphi search delphi-2007

6
推荐指数
1
解决办法
6586
查看次数

使用delphi从.log文件读取时,将"ÿþI"作为输出数据

我试图从.log文件中读取数据并处理其内容.日志文件由另一个应用程序创建.当我在Delphi中使用readln命令并在备忘录中显示文件的内容时,我只从一个包含超过6000行数据的文件中获取一行数据(ÿþI).

    procedure TForm1.Button1Click(Sender: TObject);
    Var
        F : TextFile;
        s : string;
    begin
        AssignFile(F, 'data.log');
        Reset(F);

        while not Eof(F) do
        begin
            Readln(F, s);
            Memo1.Lines.Add(s);
        end;
    end;
Run Code Online (Sandbox Code Playgroud)

有谁知道问题可能是什么?

delphi delphi-7 delphi-2007

6
推荐指数
1
解决办法
1054
查看次数

使用备用注册表项启动Delphi

我发现此文档表明您可以使用备用注册表项启动Delphi.但我无法让它工作(使用Delphi 2007,也尝试过2010).我的捷径的目标是

"C:\ Program Files\CodeGear\RAD Studio\5.0\bin\bds.exe"-pDelphi -rHKEY_CURRENT_USER\Software\Borland\BDS\5.0

当我运行Delphi启动时没有加载任何包. 我以错误的方式传递密钥吗?这是2007/2010期间的功能吗?(它似乎在那里,因为在启动时正常加载的包没有加载)

我想要解决什么?:

我使用不同版本的第三方组件有不同的发行版.当我需要修复旧分支上的错误时,UI(使用后来的第三方版本运行)更改dfm,使用部分ect.适合在UI中安装的版本.旧的分支仍然链接旧版本的第三方,并崩溃

delphi delphi-2007

6
推荐指数
1
解决办法
1289
查看次数

使用XPath从XML读取不同的值

我有一个XML格式如下:

<Accounts>
   <Account Number="1"   DebitAmount="1000" Amount="2827561.95" /> 
   <Account Number="225" DebitAmount="2000"  Amount="12312.00" /> 
   <Account Number="236" DebitAmount="London"    Amount="457656.00" /> 
   <Account Number="225" DebitAmount="London"    Amount="23462.40" /> 
   <Account Number="236" DebitAmount="Bangalore" Amount="2345345.00" /> 
</Accounts>
Run Code Online (Sandbox Code Playgroud)

如何使用Xpath检索唯一帐号?即,我想得到值1,225和236.

这就是我所做的:(我正在使用Delphi 2007 ...)

Const XmlStr =
' <Accounts>
   <Account Number="1"   DebitAmount="1000" Amount="2827561.95" /> 
   <Account Number="225" DebitAmount="2000"  Amount="12312.00" /> 
   <Account Number="236" DebitAmount="London"    Amount="457656.00" /> 
   <Account Number="225" DebitAmount="London"    Amount="23462.40" /> 
   <Account Number="236" DebitAmount="Bangalore" Amount="2345345.00" /> 
</Accounts>';

 function GetAccountNumbers:TList;
 Var
   XMLDOMDocument  : IXMLDOMDocument;
   accounts : IXMLDOMNodeList;
  accountdetail :IXMLDOMNode;
   i:Integer
   list :TList
 begin
   Result:=TList.Create;
   XMLDOMDocument:=CoDOMDocument.Create; …
Run Code Online (Sandbox Code Playgroud)

delphi delphi-2007 delphi-2010

6
推荐指数
1
解决办法
3107
查看次数

为什么TDateTimePicker.Checked在Windows 7上总是返回True?

我有一个应用程序,在Delphi 2007中构建,TDateTimePicker在表单上有一个.此日期时间选择器具有ShowCheckbox设置为的属性True,其在日期或时间旁边显示一个复选框,每当用户选择日期时,或者通过代码更改日期或时间时,该复选框将自动选中.此复选框的状态也可由用户手动控制,其状态可由Checked属性确定.

以下代码显示如何确定OnChange事件中此复选框的状态:

procedure TForm1.FormCreate(Sender: TObject);
begin
  DateTimePicker1.ShowCheckbox := True;
end;

procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
  ShowMessage('Checked: ' + BoolToStr(DateTimePicker1.Checked, True));
end;
Run Code Online (Sandbox Code Playgroud)

上面的代码在Windows XP上按预期工作,但在Windows 7上,Checked无论该复选框的实际状态如何,该属性都返回True.

为什么Checked属性返回始终为True,即使取消选中复选框也是如此?有办法以某种方式修复或解决这个问题吗?

PS我的应用程序使用Windows主题

delphi delphi-2007 windows-7 tdatetimepicker

6
推荐指数
1
解决办法
2407
查看次数

Delphi中一个和多个"类型"块之间的区别

我一直在为Delphi编程五六年,我认为自己相当擅长,但我最近偶然发现了一个我无法解释的行为.我正在编写一个简单的链表,我们称之为TIntegerList.下面的示例代码正确编译:

type
  PIntegerValue = ^TIntegerValue;

  TIntegerValue = record
    Value: Integer;
    Next: PIntegerValue;
    Prev: PIntegerValue;
  end;
Run Code Online (Sandbox Code Playgroud)

但是,下面的代码没有(说TIntegerValue未声明):

type
  PIntegerValue = ^TIntegerValue;

type  
  TIntegerValue = record
    Value: Integer;
    Next: PIntegerValue;
    Prev: PIntegerValue;
  end;
Run Code Online (Sandbox Code Playgroud)

Delphi中"type"关键字究竟是如何处理的?与在每个类型中使用一个"类型"相比,在一个"type"关键字下声明多个类型的语法含义是什么?好吧,这令人困惑,但我希望代码示例有助于解释我的意思.我在Delphi 2007工作.

delphi syntax compilation delphi-2007

6
推荐指数
1
解决办法
317
查看次数

Delphi .dproj文件中的<DCCReference>标记是什么?

我碰巧注意到一个<DCCReference>标记引用了一个甚至不存在的文件.这些标签有什么意义?删除它们会带来什么后果?

delphi delphi-2007

6
推荐指数
1
解决办法
621
查看次数