我在做安装程序时,修改了环境变量\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment中的path值,然后调用SendMessageTimeOut通知系统更新环境变量。但对Delphi不熟,具体实现时出现一些问题,请高手指正。编译运行后出现“运行时间错误”。代码如下:function SendMessageTimeOut(hWnd: Integer; Msg: Integer; wParam: Integer; lParam: Integer; fuFlags: Integer; uTimeOut: Integer; lpdwResult: Cardinal): Integer;
external '[email protected] stdcall';procedure AfterMyProgInstall(S: String);
var
lParam, wParam : Integer;
dwReturnValue:Cardinal;
begin
wParam := 0;
lParam := 0;
SendMessageTimeout(HWND_BROADCAST,
WM_SETTINGCHANGE,
wParam,
lParam,
SMTO_NORMAL,
5000,
dwReturnValue);
end;
external '[email protected] stdcall';procedure AfterMyProgInstall(S: String);
var
lParam, wParam : Integer;
dwReturnValue:Cardinal;
begin
wParam := 0;
lParam := 0;
SendMessageTimeout(HWND_BROADCAST,
WM_SETTINGCHANGE,
wParam,
lParam,
SMTO_NORMAL,
5000,
dwReturnValue);
end;
解决方案 »
- delphi 中DateTimePicker的用法
- 请问:如何判断一个控件是否具有数据感知属性?
- 这句有错误吗?ADOQuery1.Locate('phonehead', CallerEdit.Text, [loPartialKey])
- 小型ERP系统的日志系统该怎么写?
- 恳请赐教,看看这是什么错误?
- varchar型变回来成日期型的, 如何实现这种转换呢??
- 谁有DynamicSkinForm 的注册码??(100分)!!!
- 有关DELPHI中TDCOMCONNECTION连接的问题,怎么单机能连接,双机不能连接?
- +++谁知道那里有类似与PC anywhere 这样的远程控制的构件。
- 如何批量增加数据,纪录大于20000条,
- 那位用过wwDBGrid帮我看看:wwDBGrid中对每一列可以设置其显示方式如某一列显示类型为CheckBox可是我在程序中动态怎么设置(所显示列为bo
- 过程嵌套是什么含义,有什么用途?
external '[email protected]';
我是使用inno setup 4.27做安装盘。inno setup是用delphi写的,带有delphi的编译器,按你给出的stdcall换位,编译通不过,提示在stdcall之前要用begin。
他自带的例子就是这样写的,编译没有任何问题。那问题出在哪?