标签: pascal

在Delphi中翻译语言

我一直在寻找能够将任何语言翻译成另一种语言的代码,但我找不到任何代码.
我知道谷歌有一个很好的翻译API,但我不能让任何人的Delphi代码工作.
始终存在错误.任何帮助将不胜感激,我需要一个程序,可以尽快翻译我最后的学校项目.

delphi api pascal translate

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

TDownloadURL无法从HTTPS下载

我一直在尝试通过TDownloadURL类创建(TFileStream)PDF,但我真的遇到了从URL获取文件/流的麻烦,特别是如果URL是HTTPS.

我不确定我是否清楚,但我会发布一个片段,这样可能有助于理解:

implementation
var pdfStreamed: TDownloadUrl;
var fileStream : TFileStream;
  procedure generateStream;
  begin
    pdfStreamed:= TDownLoadURL.Create(nil);
    with pdfStreamed do
      begin
        URL := 'https://farm9.staticflickr.com/8327/8106108098_08e298f0d9_b.jpg'; //stream;
        FileName := 'D:\';
        ExecuteTarget(nil);
//        Execute;
      end;
  end;
Run Code Online (Sandbox Code Playgroud)

URL属性在HTTP中同样存在于HTTPS中!但它会抛出一个错误:异常类异常消息'下载URL时出错:https://farm9.staticflickr.com/8327/8106108098_08e298f0d9_b.jpg '.

可以指出我做错了什么?我为此搜索了很多,但找不到任何有效和简单的东西!

非常感谢!

delphi https pascal tfilestream delphi-xe2

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

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

C函数指针转换成Delphi/Pascal?

我目前正在将一些C头文件转换为Delphi.我找不到将函数指针从C转换为Delphi的引用.

typedef _JAlloc JAlloc;  
struct _JAlloc {  
    void *(*alloc) (JAlloc *allocator, size_t size);  
    void (*free) (JAlloc *allocator, void *p);  
    void *(*realloc) (JAlloc *allocator, void *p, size_t size);  
};
Run Code Online (Sandbox Code Playgroud)
  1. Delphi的翻译是什么?

  2. 在哪里可以找到将C头手动转换为Delphi的良好资源(包括指针,预处理器指令等)?

c delphi pascal pointers function-pointers

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

算法smbPitchShift(Pascal)

我在Pascal中找了很长时间这个算法并没有找到,我发现它只在C++中,它令人沮丧.然后我决定翻译Pascal的C++代码,但是有些问题我无法解决.它出现了错误消息"浮点溢出".我想帮助使这段代码有效!

var
  WFX: pWaveFormatEx;

  {** Algoritimo Pitch Shift **}
  gInFIFO, gOutFIFO, gLastPhase, gSumPhase, gOutputAccum: Array Of Extended;
  gAnaMagn, gAnaFreq, gSynFreq, gSynMagn, gFFTworksp: Array Of Extended;

Const
  MAX_FRAME_LENGTH = 8192;

implementation

{$R *.dfm}

procedure smbFft(fftBuffer: PExtended; fftFrameSize, sign: Integer);
var
  p1, p2, p1r, p1i, p2r, p2i: PExtended;
    wr, wi, arg, temp: EXTENDED;
  tr, ti, ur, ui: EXTENDED;
    i, bitm, j, le, le2, k: Integer;
begin
  i:= 2;
  WHILE (i < 2*fftFrameSize-2) DO                                                //for (i = 2; i < 2*fftFrameSize-2; i += …
Run Code Online (Sandbox Code Playgroud)

delphi pascal freepascal

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

使用Inno Setup中格式化(部分粗体)的文本制作安装程序?

有人看过GOG.com游戏安装程序吗?如何在单个标题中创建包含路径和需要大小的欢迎文本字符串?部分是粗体的.

以下是修改安装路径后如何更改String换行的示例

http://i.stack.imgur.com/VKbtE.jpg

在此输入图像描述

在此输入图像描述

delphi scripting pascal inno-setup

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

Pascal中的类型检查

我只是想知道如何在pascal中进行类型检查?我已经搜寻了几个小时,但找不到任何有用的东西。

例:

var 
number: Integer;

begin
  write('Enter a number: ');
  read(number);

  if {How am I supposed to check if 'number' is an Integer here?}
  then writeln(number)
  else writeln('Invalid input')
end.
Run Code Online (Sandbox Code Playgroud)

pascal fpc

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

嵌套结构化类型的嵌套常量是不受支持的?

尽管Delphi引用了什么

结构化类型可以包含其他结构化类型 一个类型可以有无限级别的结构

值得注意的例外是结构化类型常量

不能包含任何级别的文件类型值

我发现我不能使用记录常量作为相同类型的数组常量的元素.

测试用例

type
  MyRecord = record MyField: Integer end;

const
  Typical: array[0..1] of MyRecord = ((MyField: 0), (MyField: 1));

  { now I tried to achieve more clarity by declaring a specific constant }
  Zero: MyRecord = (MyField: 0);

  { and compiler refused to accept that }
  Bad: array[0..1] of MyRecord = (Zero, (MyField: 1));  { E2029 '(' expected but identifier 'Zero' found }
Run Code Online (Sandbox Code Playgroud)

我用几个Borland编译器测试了这个代码,它们都表现出相同的行为.UPD:FPC也是如此,但不适用于GPC(!).

问题(S)

这里发生了什么?我是否更正问题标题中的"嵌套结构类型的嵌套常量不受支持"结论?对问题的任何更多分析?

delphi pascal

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

Inno设置目录存在

我试图检查inno设置如果目录存在,我想分别手动编程.我在Inno设置中创建的安装程序是一个更新.这是棘手的部分,初始设置使用C#应用程序来安装光盘上的所有文件,因为每个客户的设置都不同.我想现在检查安装了哪些目录,因为我知道我需要更新什么.我的问题是:如何在Inno设置中确定目录是否存在,或者如何确定目录中的子目录

并一如既往地提前感谢.

directory pascal inno-setup

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

在Pascal中回溯:找到最大加权分支

我一直在学习Pascal(使用Free Pascal编译器)一个星期,并且遇到了一个看似简单的练习.给定如下所示的结构,找到最大加权分支:

    1
   4 9
  7 0 2
 4 8 6 3
Run Code Online (Sandbox Code Playgroud)

分支是从顶部开始的任何数字序列(在这种情况下:1),对于每个数字,分支可以向左或向右扩展.例如,分支1-4-0可以扩展为1-4-0-8或1-4-0-6.所有分支必须从顶部开始,在底部结束.

在这个例子中,最大分支是1-4-7-8,这给了我们20.为了解决这个问题,我尝试使用回溯.三角形结构存储在"三角形"类型的数组中:

type triangle = array[1..MAX_NUM_OF_ROWS, 1..MAX_NUM_OF_ROWS] of integer;
Run Code Online (Sandbox Code Playgroud)

这是我的实现:

function findAux(data: triangle; dim: integer; i: integer; j:integer) : integer;
begin
if i = dim then
    findAux := data[i][j]
else
    if findAux(data, dim, i + 1, j + 1) > findAux(data, dim, i + 1, j) then
        findAux := data[i+1][j+1] + findAux(data, dim, i + 1, j + 1);
    else
        findAux := data[i+1][j] + findAux(data, dim, i + …
Run Code Online (Sandbox Code Playgroud)

recursion pascal freepascal backtracking

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