Articles of 拉撒路

Where或How,我可以在TDaemonApplication上将我的代码挂接到Unix信号(主要是SIGHUP)吗?

在Apache模块上遇到困难后,我转向了一个守护进程应用程序( TCustomDaemonApplication ),这也是我的项目所需要的。 一旦我意识到没有明显的方法来钩住* nix信号,而我正在寻找的是SIGHUP的configuration重新加载,我跳入源。 我发现整个概念都是以Windows为中心的,而且实施起来非常糟糕。 所以,我的问题是,我应该使用我自己的daemonapp.(pp|inc) ,并在Procedure SysInitDaemonApp;下包含我自己的fpSigaction()调用Procedure SysInitDaemonApp; 还是有一个“正确”的做法,我已经错过了?

如何以编程方式检测sambalocking的文件?

我怎样才能以编程方式获得由sambalocking的文件列表? 有一个命令smbstatus会给你的信息。 但是我希望在我的程序中得到这个信息(写在Lazarus中)。 一种方法是将smbstatus作为subprocess运行并parsing输出。 我正试图直接获得程序中所需的信息(使用API​​)。

线程在Lazarus Linux Ubuntu上

我在使用线程运行应用程序时出现问题,在Windows上工作正常,但是当我在Linux Ubuntu 12.04上运行它时,我的应用程序崩溃了。 这是一个非常小的应用程序只是为了了解线程。 线程创build时,我的应用程序崩溃。 这里si代码: unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls; type { TMyThread } TMyThread = class(TThread) private fStatusText: string; procedure CambiaLabel(); protected procedure Execute; override; public constructor Create(CreateSuspended: boolean); end; { TForm1 } TForm1 = class(TForm) Button1: TButton; Button2: TButton; Label1: TLabel; ProgressBar1: […]

我无法在Lazarus中将CGI项目编译成Linux

我安装了Lazarus 1.0.10和FCL软件包。 我做了一个CGItesting程序运行在我的Hostgator帐户,但是当我编译它时,我得到这个错误: fcllaz.pas(0,0)致命:无法findfcllaz使用的单位系统。 如果我configuration项目目标Linux SO。 如果我使用标准(Windows)编译好,但我的hostgator帐户是Linux。 有没有人有这样的问题? 如何解决它?

在Linux中的Windows gdi区域的等效

我有时使用Windows gdi区域进行graphics绘制和失效/validation。 例如,程序http://www.maxerist.net/main/soft-for-win/tubicus(oss )仅使用区域(无位图或离屏缓冲区)。 使用FillRgn和FrameRgn进行绘制,使用InvalidateRgn和CombineRgn进行无效和绘制,每个单元格(请参见截图)都是使用CreateEllipticRgn,CreatePolygonRgn和CombineRgn创build的简单区域。 我有计划把它移植到Linux上。 据我所知,Linux中有很多graphics库。 有没有支持类似Windows的区域? 谢谢

从Windows移植到Linux

我在Windows上有一个用Lazarus编写的项目,但我想在我的Windows计算机上交叉编译Linux。 我怎样才能做到这一点?

视觉小尺寸的语言

我需要开发一个具有6或7个窗体的简单的Windows应用程序。 它的主要目的是pipe理文件并启动外部程序。 这是我的愿望,按重要性顺序排列 自由 可视化,我的意思是,在屏幕上绘制表单和对象的可能性。 可以将其携带到USB笔式驱动器中。 我需要一个轻/小的语言,而不是一个非常复杂的语言。 我的程序将有很less的forms,其function很简单。 有什么语言符合这个愿望吗? 如果没有,是否有商业?

Windows的Lazarus 64位可以编译为64位的Windows吗?

我下载了,我认为,将是64位版本的拉撒路: 虽然它下载了一个32位版本: 安装完成后,IDE是32位的: 它构build了32位二进制文​​件: 将定位选项更改为win64 , win64 , win64 : 给出一个Lazarus不支持64位的错误: 阅读有点过时的Cross编译Wiki页面给出了如何使64位Lazarus在64位机器上工作的说明: 从win32到win64 如果你正在编译fpc的2.1.1或更高版本的分支,你可以这样做: $ make all OS_TARGET=win64 CPU_TARGET=x86_64 接着 $ make crossinstall OS_TARGET=win64 CPU_TARGET=x86_64 如果你遵循,只会给出几千个错误: 常见的build议是放弃Lazarus IDE,并使用一个名为CodeTyphoon的叉。 下载500 MB,并安装它,我无法find任何地方的IDE: 这是令人困惑的,因为我认为 CodeTyphoon是一个Pascal可视化编程环境。 在我继续之前 在我随机磕磕绊绊,下载千兆字节的东西之前,让我直接问一下: Windows的Lazarus 64位可以编译为64位的Windows吗? 是否有一个Windows的64位Lazarus,可以创build64位Windows二进制文件? 我是否缺less某些东西,还是那个function不在那里? 如果能力在那里,至less有人可以相信我的困惑是可以理解的吗?

提取拉撒路资源

我创build了一个文件.Lrs和我导入到程序,它的工作原理,但我怎么从程序中获取资源,并将其提取到我的电脑上的位置? 这是代码: unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, LResources, Controls, Graphics, Dialogs, ExtCtrls; type { TForm1 } TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation {$R *.lfm} { TForm1 } procedure TForm1.FormCreate(Sender: TObject); begin end; initialization {$I resource.lrs} […]

如何将Python部署到Windows用户?

我很快将推出一个testing版应用程序,并且可以select在Python上创build自定义集成脚本。 该应用程序将针对Mac OS X和Windows,而我的问题是在Python通常不存在的Windows。 我真正的aproach是静静地运行Python 2.6安装。 不过,我面临的问题是没有激活默认情况下,使用命令行选项时path没有设置。 我担心,如果Python安装之前,我升级到一个新的版本,这可能会打破别的东西… 所以,我想知道这可以做得干干净净。 如果我复制整个Python 2.6目录,并把它放在我的应用程序的一个子目录中,并在那里安装所有东西,那么可以吗? 或者用virtualenv可以运行不同版本的Python(如果Python已经安装在机器上?)。 我也在使用DLLembeddedPython之前玩,发现它很容易,但我失去了debugging的能力,所以我切换到命令行插件。 我从命令行执行插件并读取STDOUT和STDERR输出。 该应用程序是由delphi/拉撒路。 我安装了其他模块,如JSON和RPC客户端,Win32com,ORM等。我用bitrock创build安装程序。 更新:最终用户是小企业主,Python脚本是由开发人员。 我想避免部署中的任何额外步骤,所以我想要一个完全集成的设置。