delphi无法启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi无法启动相关的知识,希望对你有一定的参考价值。

昨天重新更新了一个 版本,安装新版本无法运行,重新装之前可以正常运行的版本也失败。。。现在启动程序就提示未响应。。。还原系统点也不行。。求高手解答 在线等球球 350645013 求远程。。版本是C/L//X/B/a//s/e/7

试一下这个
关闭数据执行保护 或添加delphi32.exe为DEP的特例。

具体方法视你的操作系统而定。 以Windows 7为例。 我的电脑-右键属性-高级系统设置-高级-性能设置-数据执行保护-添加
参考技术A 重新做系统吧追问

重做系统还是有问题、、、

delphi如何调用dll函数

Function OpenPrinter(pPrinterName:pchar): boolean;export;stdcall;external 'ZQPntCtrl.dll' name 'OpenPrinter';
如何调用以上dll函数?请给以指教!!!
我把打印名改过了,用了怎么还是不行啊,请指教?
ZQPntCtrl.dll 是打印机厂家发给我的打印链接库文件。
Function OpenPrinter(pPrinterName:pchar): boolean;export;stdcall;external 'ZQPntCtrl.dll' name 'OpenPrinter';是厂家给我的接口函数。
怎么调用呢?
OpenPrinter(PChar('参数'));中的参数应是什么?
我已把ZQPntCtrl.dll 拷到目标目录上了。
可还是不行?求求了。

参考技术A 静态调用:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
Private declarations
public
Public declarations
end;

var
Form1: TForm1;
procedure showform;External 'Project1.dll';静态调用
implementation

$R *.dfm

procedure TForm1.Button1Click(Sender: TObject);
begin
showform;
end;

end

动态调用:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
Private declarations
public
Public declarations
end;

var
Form1: TForm1;

implementation

$R *.dfm

procedure TForm1.Button1Click(Sender: TObject);
var
Sabout:THandle;
ShowA:procedure;
begin
Sabout := LoadLibrary('Project1.dll');
if Sabout=0 then begin
Application.MessageBox('动态连接库Project1.dll文件不存在!','错误',64);
exit;
end;
ShowA := GetProcAddress(Sabout,'showform');
showA;
FreeLibrary(Sabout);
end;

end.
参考技术B 首先声明函数
就是你写的这样
Function OpenPrinter(pPrinterName:pchar): boolean;export;stdcall;external 'ZQPntCtrl.dll' name 'OpenPrinter';
然后使用
OpenPrinter(PChar('参数'));
注意 ZQPntCtrl.dll 一定要和exe 一起带上.
参考技术C OpenPrinter(Pchar('打印机名')):

打印机名改成你的就行了
打印机名就是电脑生成的打印机名呀,在控制面板---打印机中有显示呀本回答被提问者采纳
参考技术D Tdumpbin.exe和VC的dumpbin.exe可以得到DLL的导出函数。

以上是关于delphi无法启动的主要内容,如果未能解决你的问题,请参考以下文章

永久解决delphi 2010不能2次启动问题

delphi 创建系统服务启动时出错

delphi如何关闭启动窗体

解决Delphi 2010启动时出现cannot create xxxxEditorLineEnds.ttr问题

lync 运行时无法启动应用程序?

delphi等窗口完全显示后执行一段代码