两个问题:A、设置W2k(or NT)的环境变量并使其生效 B、怎样重启W2k(or NT)的某项服务(100分)

  • 主题发起人 主题发起人 zanpen2001
  • 开始时间 开始时间
Z

zanpen2001

Unregistered / Unconfirmed
GUEST, unregistred user!
设置了环境变量后,怎样才能使其生效?用下面的代码修改成功后,退出程序,
又变成原来的样子了,相当于没加,各位高手,有知道的请详加指点。
我用的系统是W2k,是不是这家伙背着我重启了一遍什么服务?如果是的话,怎样
在程序中重启W2k的服务?我查过资料了,好像很少,也很难,就请各位多费心吧
,我正在给公司的数据库写安装程序,是Sybase,安装过程中也要重启Sybase服
务的,当然,安装时也要用到设置环境变量。
procedure TForm1.Button5Click(Sender: TObject);
var
path_name,path,add_path:pchar;
begin
path_name:='path';
add_path :=';d:/temp';
getmem(path,255);
try
GetEnvironmentVariable(path_name,path,255);
SetEnvironmentVariable(path_name,strcat(path,add_path));
finally
freemem(path);
end;
end;
 
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager/Environment
 
to menxin : hehe !还有那个服务呢?我要重启Sybase的服务!一句话一百分,太容易你了,怎么着也得
让你费点劲。
 
呵呵,我用的98呀,能找到这个可不容易
 
从控制面板->管理工具->服务里面可以查到SyBase的服务文件名,在服务文件名后面
添加 /install,是安装该服务 /uninstall是卸载该服务。
那么是不是 /start /stop /pause分别是启动、停止、暂停呢?(没有实验过呀)
我身边没有环境,只能你自己实验以下了。[:)]
 
另外,修改注册表后在W2k下的话,还是要重新注销一次才能生效,能不能不让系统注销就
使其生效?有没有好办法?
 
启动服务:net start service

在DELPHI中调用DOS命令会不?
 
关于service,看看这个对你有没有用
http://www.delphibbs.com/delphibbs/dispq.asp?lid=149208
 
to menxin:我看了那几个函数了,不会用。要是有具体例子让我照着画就好了。

大家接着讨论吧,想弄得更明白些,不想再一知半解下去了。。。。
 
应该用NT带来的“NET”命令。DELPHI在安装时好象也是用这个东西做一些见不得人的勾当:)
 
如果是用NT下的命令,我怎么知道它的执行情况如何呢?是失败还是成功?结果如何?这又
遇到另一个问题了,我怎样把Dos窗口中的执行结果读到我的程序中来?我知道是用管道,以
前也在这里问过这个问题,有人给我一个例子,但不完整,执行到ReadFile()函数就失去
响应,刚才我还在看这个程序,看能否改好,其实等Dos程序执行完后可以看它用 ">"生成的
文件,但如果是很大的批处理文件呢?我需要在执行过程中监视执行情况,并随时准备作出
是否终止的反应,这时候就必需用到PIPE了,怎么办呢?愁死我了,我正在给公司的数据
库做一个安装程序,那个批处理文件好大,执行起来如果顺利的话要好几个小时呢!唉。。。
天啊!有谁能帮帮我?
 
To Menxin:在这里搜了一下,找到了怎么把Dos程序的输出结果发送到VCL控件上的例子程序。
不过,对于修改注册表后怎样不用重启计算机就能使其生效的问题还是没有解决。关于启动
与停止Sybase服务的问题也还没有找到答案,我再找找看吧,你为我这么费心,真的是很谢
谢你!发你66分,愿你在新的一年里六六大顺!

大家答得都不错,感谢大家!

我要结束这个问题了,发分吧,快出差了,怕在外面没时间上,让大家等急了。
 
请参看:http://www.delphibbs.com/delphibbs/DispQ.asp?LID=1242554
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
448
import
I
后退
顶部