标签: freepascal

Delphi和/或FreePascal代码最常见的docblock

我对PHP dockblocks非常熟悉,因为它是我过去15年来的工作.

/**
  * Description
  *
  * @tag bla bla
  * @tag more bla bla
  */
Run Code Online (Sandbox Code Playgroud)

我想要了解的是,对于Delphi和/或FreePascal,是否存在类似的标准.

从我对很多代码的分析我从未见过,但我可能是错的.

delphi comments freepascal code-documentation docblocks

8
推荐指数
2
解决办法
2736
查看次数

如何使用Free Pascal编译64位Mac程序?

我在我的Mac上有一个由GCC编译的x86_64库,我想将它与使用Free Pascal 2.4编译的Pascal代码链接.我可以使用哪些选项fpc来生成64位代码?没有任何选项,我只获得32位.o文件.

我正在使用来自SourceForge 的fpc-2.4.0.intel-macosx.dmg下载,但是当我运行时fpc -i,它列出的唯一目标Macintosh平台是"Darwin for i386",尽管2.4版本说明它可以定位"64 -bit Mac OS X(x86_64/ppc64)."

macos 64-bit freepascal

8
推荐指数
1
解决办法
2939
查看次数

Indy for FreePascal稳定吗?

我开始玩FreePascal/Lazarus,似乎有一个Indy端口可用.这是一个最近的端口,它是否足够稳定,可用于生产?(标准HTTP post/get客户端类型工作,以及基本TCPIP服务器端.)

或者,也许Indy明确开发用于FreePascal以及Delphi,所以最新版本可行吗?

谢谢!

delphi freepascal indy indy10

8
推荐指数
1
解决办法
887
查看次数

UTF-8中的字符串到字节数组?

如何在UTF-8中将WideString(或其他长字符串)转换为字节数组?

freepascal utf-8 lazarus

8
推荐指数
3
解决办法
9024
查看次数

用于调用OpenSSL EVP函数的Delphi/Pascal示例

有没有人有一个Delphi/Pascal示例来调用下面的OpenSSL函数...

http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/packages/openssl/src/openssl.pas?revision=17634&view=markup

我特别感兴趣的是:

procedure EVP_CIPHER_CTX_init(a: PEVP_CIPHER_CTX);

function EVP_CIPHER_CTX_cleanup(a: PEVP_CIPHER_CTX): cint;

function EVP_CIPHER_CTX_set_key_length(x: PEVP_CIPHER_CTX; keylen: cint): cint;

function EVP_CIPHER_CTX_ctrl(ctx: PEVP_CIPHER_CTX; type_, arg: cint; ptr: Pointer): cint;
//
function EVP_EncryptInit(ctx: PEVP_CIPHER_CTX; const chipher_: PEVP_CIPHER;const key, iv: PByte): cint;

function EVP_EncryptUpdate(ctx: PEVP_CIPHER_CTX; out_: pcuchar;outlen: pcint; const in_: pcuchar; inlen: cint): cint;

function EVP_EncryptFinal(ctx: PEVP_CIPHER_CTX; out_data: PByte; outlen: pcint): cint;

function EVP_DecryptInit(ctx: PEVP_CIPHER_CTX; chiphir_type: PEVP_CIPHER;const key, iv: PByte): cint;

function EVP_DecryptUpdate(ctx: PEVP_CIPHER_CTX; out_data: PByte;outl: pcint; const in_: PByte; inl: cint): cint;

function EVP_DecryptFinal(ctx: PEVP_CIPHER_CTX; …
Run Code Online (Sandbox Code Playgroud)

delphi pascal openssl freepascal

8
推荐指数
1
解决办法
7748
查看次数

编程屏幕录像机 - 输出问题

我想要记录屏幕(通过每秒捕获15个屏幕截图).这部分我知道怎么做.但我不知道如何将其写成一些流行的视频格式.我找到的最佳选择是将帧写入分离的PNG文件并使用命令行Mencoder,它可以将它们转换为多种输出格式.但也许有人有另一个想法?

要求:

  • 必须是多平台解决方案(我使用Free Pascal/Lazarus).Windows,Linux,MacOS
  • 存在一些图书馆吗?
  • 可能是复杂的命令行应用程序,它也为我记录屏幕,但我必须有可能编辑帧之前将整个原始数据转换为流行的视频格式
  • 所有能给我一些想法的材料都值得赞赏.API,图书馆,甚至除了FPC之外的任何其他语言(我会尝试重写它或找到一些等价物)
  • 我还考虑将帧写入视频RAW格式然后使用Mencoder(他可以处理它)或其他解决方案,但找不到任何用于视频RAW数据的API/doc

问候

delphi freepascal video-processing lazarus

8
推荐指数
1
解决办法
2378
查看次数

从C头文件自动创建Delphi/Freepascal接口单元

是否可以从C头文件自动生成接口单元?特别是,我想包装HDF5库,如果我可以避免手动编写接口单元那将是很好的.

delphi pascal freepascal hdf5

8
推荐指数
3
解决办法
2361
查看次数

FreePascal / Lazarus 并实现 nsurlconnectiondatadelegate

我正在尝试实现 nsurlconnectiondatadelegate,因为我需要支持异步模式 - 在同步模式下,我不想要自动遵循重定向。

作为参考,我有使用 urlRequest 等在同步模式下工作的代码。

问题是我无法让 FPC/Lazarus 编译我的代码。

...

代码片段

{$mode objfpc}
{$modeswitch objectivec1}
{$modeswitch objectivec2}
Run Code Online (Sandbox Code Playgroud)

...

// We need to implement support for NSURLConnectionDelegate and NSURLConnectionDataDelegate
TmsMacRequestDelegate = objcclass(NSObject)
public
  // this will set flag when done
  procedure connectionDidFinishLoading(ANSUC: NSURLConnection); message onnectionDidFinishLoading:'; override;
  // ... implement rest?
end;
Run Code Online (Sandbox Code Playgroud)

...

requestDelegate := TmsMacRequestDelegate.alloc.init;
urlConnection := NSURLConnection.connectionWithRequest_delegate(urlRequest, requestDelegate);
// ... setup flag
urlConnection.start;
// ... wait here in loop checking flag set by "finish loading"
Run Code Online (Sandbox Code Playgroud)

...

有了上述内容,初步测试似乎不太顺利。我们到达 urlConnection.start; 但 …

pascal freepascal lazarus nsurlconnectiondelegate

8
推荐指数
1
解决办法
130
查看次数

是否有一个中央FreePascal/Lazarus组件存储库?

我希望找到像托里这样的东西,但不是以德尔福为中心,它应该是拉撒路的中心.

我知道Source Forge项目代码和组件库,但我正在寻找具有更多跨度和更多搜索功能的东西.

components freepascal repository lazarus

7
推荐指数
1
解决办法
8019
查看次数

为什么Pascal控件结构看起来不一致?

大多数Pascal控件结构对我有意义,例如:

for ... do {statement};

if (condition) then {statement};

while (condition) do {statement};
Run Code Online (Sandbox Code Playgroud)

其中{statement}是单个语句或begin ... end块.我有一个问题:

repeat {statement-list} until (expression);

try {statement-list} except {statement-list} end;
Run Code Online (Sandbox Code Playgroud)

重复尝试具有相同的通用结构,只接受单个语句或开始 ... 结束块,而不是具有未正式阻止开头结尾的语句列表,这不是更好吗?

delphi pascal language-design freepascal

7
推荐指数
3
解决办法
1022
查看次数