NT註冊/啓動問題請教

jianghd 2004-08-31 03:48:46
我在NT服務下註冊了一個自己寫的程序,該程序通過配置文件取得與數據庫連接的參數,程序註冊成功,但就是在啓動時報錯。如把與數據庫連接的參數寫死在程序中就能正常啓動。請問這應該如何解決?
...全文
138 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianghd 2004-09-01
  • 打赏
  • 举报
回复
等于白问了......
大聪 2004-08-31
  • 打赏
  • 举报
回复

function unInstallService(SvcName: string): boolean; //删除指定服务
var
hSCM, hService: SC_HANDLE;
ErCode: DWord;
//if unInstallService('Service1') then
//ShowMessage('unInstall Service success');
begin
Result := false;
hSCM := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
if hSCM = 0 then
begin
ErCode := GetLastError;
{$IFDEF DEBUG}
ShowMessage(SysErrorMessage(ErCode));
{$ENDIF}
exit;
end;
try
hService := OpenService(hSCM, PChar(SvcName),
SERVICE_ALL_ACCESS);
if hService = 0 then
begin
ErCode := GetLastError;
{$IFDEF DEBUG}
ShowMessage(SysErrorMessage(ErCode));
{$ENDIF}
exit;
end;
result := DeleteService(hService);
if not result then
begin
ErCode := GetLastError;
case ErCode of
ERROR_ACCESS_DENIED: ;
ERROR_INVALID_HANDLE: ;
ERROR_SERVICE_MARKED_FOR_DELETE: ;
end;
{$IFDEF DEBUG}
ShowMessage(SysErrorMessage(ErCode));
{$ENDIF}
end;

CloseServiceHandle(hService);
finally
CloseServiceHandle(hSCM);
end;
end;
大聪 2004-08-31
  • 打赏
  • 举报
回复

function InstallService(SvcName, SvcDispName, SvcFullPath: string): integer; //安装指定服务
var
hSCM, hService: SC_HANDLE;
sInfo: string;
//InstallService('Service1', 'Ari''s Service1', 'G:\test\service\AriSerApp.exe');
begin
result := 0;
hSCM := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS);
if hSCM = 0 then
begin
result := GetLastError;
{$IFDEF DEBUG}
ShowMessage(SysErrorMessage(result));
{$ENDIF}
exit;
end;
try
hService := CreateService(hSCM,
PChar(SvcName),
PChar(SvcDispName),
SERVICE_START, //SERVICE_START OR SERVICE_QUERY_STATUS OR _DELETE, SERVICE_ALL_ACCESS
SERVICE_WIN32_OWN_PROCESS,
SERVICE_AUTO_START, //SERVICE_AUTO_START, SERVICE_DEMAND_START
SERVICE_ERROR_NORMAL,
PChar(SvcFullPath),
nil, nil, nil, nil, nil);

if hService = 0 then
begin
result := GetLastError;
{$IFDEF DEBUG}
ShowMessage(SysErrorMessage(result));
{$ENDIF}
case result of
ERROR_ACCESS_DENIED: sInfo := 'ERROR_ACCESS_DENIED';
ERROR_CIRCULAR_DEPENDENCY: sInfo := 'ERROR_CIRCULAR_DEPENDENCY';
ERROR_DUPLICATE_SERVICE_NAME: sInfo := 'ERROR_DUPLICATE_SERVICE_NAME';
ERROR_INVALID_HANDLE: sInfo := 'ERROR_INVALID_HANDLE';
ERROR_INVALID_NAME: sInfo := 'ERROR_INVALID_NAME';
ERROR_INVALID_PARAMETER: sInfo := 'ERROR_INVALID_PARAMETER';
ERROR_INVALID_SERVICE_ACCOUNT: sInfo := 'ERROR_INVALID_SERVICE_ACCOUNT';
ERROR_SERVICE_EXISTS: sInfo := 'ERROR_SERVICE_EXISTS';
end;
{$IFDEF DEBUG}
messagebox(0,pchar(sInfo),'',mb_iconinformation);
{$ENDIF}
end
else
CloseServiceHandle(hService);
finally
CloseServiceHandle(hSCM);
end;
end;

大聪 2004-08-31
  • 打赏
  • 举报
回复
http://free.efile.com.cn/dacong/Delphi/DBBackup.rar
我也在做系统服务,
用delphi注册可以,就是不能启动
我只好
seivice1.exe/install
这样注册就没问题,
aiirii 2004-08-31
  • 打赏
  • 举报
回复
如你所說:
那檢查: 路徑, 權限
qiujsh 2004-08-31
  • 打赏
  • 举报
回复
应该不是,我做过读注册表的没有问题
jianghd 2004-08-31
  • 打赏
  • 举报
回复
没有问题,我测试过好几次了。我想是不是服务程序不支持运行时读外部资料
qiujsh 2004-08-31
  • 打赏
  • 举报
回复
会不会是读取配置文件路径有问题
念青五笔输入法 for Windows NT/2000/XP V1.0a版本简要说明<;br>; <;br>; 作为一个文字工作者,我很早就使用五笔输入法进行汉字录入,从最初的王码五笔起步,至今也有些儿年头了。其中感觉较好的是早期在盗版光碟上流行的那个简洁的五笔,而万能五笔因为能够在GB系统中输入BIG5汉字,我至今仍在使用。可是试用过的许多五笔输入法,都有一些不太满意的地方,例如早期的“问题”和“总是”的顺序,一些频繁使用的冇、乜嘢等口语的缺如,这些在每一次重装系统时都要遇上的问题实在让人困惑。<;br>; <;br>; 当我第一次拿到一份五笔码表时,我终于可以让字词按照自己的意愿显现,由是有了念青五笔的雏形。和周围几个同事、朋友一起使用这份码表数年,期间不断增删,渐趋满意。演示之间,每每让许多五笔用户惊诧不已。现在,念青五笔的字词数量高达60000余,充分利用了五笔字型编码的空置率,而重码率则未因此而有所提高。<;br>; <;br>; 想发布这个版本也有些日子了,可是一直不懂得输入法安装程序的制作形式及方法。在各种论坛、BBB都有向人请过相关的事项,可是寥寥的几个回应,总是搔不着痛处。一次得方旻(http://roadcom.163.net/)寄来他的输入法安装程序,说是别人帮他做的,也说不出什么所以然来,我便只好略事修改凑合着用。若有人肯就此指一二,不胜感激。<;br>; <;br>;<;br>;<;br>; 功能概述<;br>; 念青五笔一个显著的好处是支持GBK汉字,像粤语中的冇、咁、啫、乜、嘢、啰、啲、嘅等常用字都有悉数收录,可谓是填写了五笔输入史的一大空白;其次,在避免重码的前提下,加入了大量词目,诸如网友、网站、程式、菜鸟、声卡、网卡等,不一而足;对于一些词序的排列也依据常用频率作出了相应调整,如“问题”之于“总是”即是一例,而一些“的确良”之类的历史遗留问题则归还给历史了。<;br>; <;br>; 本输入法使用z作为查询键。<;br>; <;br>; 本输入法适用于简体中文版 Windows NT/2000/XP。<;br>; <;br>;<;br>; 下载和安装<;br>; 念青五笔 for Windows 95/98/ME的最新版本可以在作者的主页http://nq.yeah.net/处下载,念青五笔 for Windows NT/2000的最新版本可以在http://nq.yeah.net处下载,在WinZip(本站也提供该软件及其注册码)中打开nqwbxnt.zip后,运行setup.exe即可完成安装工作。亦可将nqwbxnt.zip解压至一个临时目录中,再运行setup.exe程序完成安装工作。<;br>; <;br>; 注:如果用户系统中已安装了本输入法的早前版本,需要在刚开机未使用早前版本的情形下进行新版本的更新安装,否则无法覆盖早前版本的码表文件。或者在安装前先打开我的电脑/控制面板/输入法,删除早前的念青五笔版本。然后重新启动电脑(如果你是在一开机的时候,立即做删除早前的念青五笔的操作,可以避免重启电脑的动作),才能正确安装好新的版本。这是视窗本身对输入法的处理方式导致的结果,并不会影响性能和使用。<;br>; <;br>;<;br>; 版权信息<;br>; 念青五笔输入法是一个免费软件,并将对词目进行持续不懈的更新,欢迎用户在使用过程中,及时提请需要新增的字词以及其他修改意见。<;br>; <;br>; 本输入法若无核心技术的重大修改,将不变更软件版本号,但是会不定期更新及增加有关的字词及词序,敬请用户及时到作者的主页下载最新的版本。<;br>; <;br>; 更为详细的说明和技巧压缩包内的HLP帮助文档,该帮助文档尚未能集成在本输入法系统中。<;br>; <;br>; 在此一并感谢念青五笔发布以来念青五笔的用户,特别是对念青五笔的字词及词序提出宝贵意见的用户,你们的反馈意见和鞭策是我不断持续维护这一五笔输入法的前进动力。<;br>; <;br>;<;br>;<;br>; 念青 草于 2001.06.12<;br>; <;br>; 本版本发布的时间是2002/09/17,版本特征词:曲奇(mads),能输入该词即表示新版本更新成功。<;br>; <;br>;<;br>;<;br>; (我的)存在是(你今生)痛苦的(唯一)根源 欢迎访问作者久不更新的网站:<;br>; 斯人念青:http://nq.yeah.net<;br>; <;br>; 联系电邮:nianqing@163.net<;br>;

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧