2
我试图验证用户在服务器端输入的序列号与Web服务,,,当用户输入串行密钥,并单击下一个按钮时,序列号应该验证..我使用下面的代码为此....我的方法验证序列号的名称是ValidateKey()....和im传递一个静态值123456为该方法和服务将返回此值的值为假,,,,但我的安装是进一步继续操作,并即时得到警报消息框在我安装的最后一步INNO设置序列号验证失败?
function ValidateSerialNumber: Boolean;
var
WinHttpReq: Variant;
begin
WinHttpReq := CreateOleObject('WinHttp.WinHttpRequest.5.1');
WinHttpReq.Open('POST', 'http://localhost:1024/WebService1/Service.asmx?op=ValidateMe', False);
WinHttpReq.Send('123456');
if WinHttpReq.Status <> 200 then
begin
Result := False;
end
else
begin
Result := True;
end;
end;
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result := True;
if CurPageID = SerialPage.ID then
begin
Result := ValidateSerialNumber;
end;
end;
在这里,我想安装停止,当用户点击下一步按钮,如果服务返回false,如果服务返回true,那么他就可以进一步安装,我在哪里错了?
是thanku ...这是工作正常,但有小问题,当它是假的,我想在屏幕上显示的消息不是一个有效的序列码给用户,还怎么第一件事我可以得到由用户输入的序列号并将其存储在变量中吗?...我编辑了我的问题,其中包含我所做的更改 – sebastian
正确的方法是询问另一个问题。这个问题问如何当用户点击下一个按钮时如何停止,如果服务返回False,我已经回答并且已经接受了。这次我会扩大我的答案,但请不要这样做。每个帖子应该有一个问题。此外,接受答案意味着该帖子解决了你的问题,这也意味着你不会在那之后改变问题。谢谢! – TLama
你想要哪种格式的序列号?用来获取输入字符串的'GetSerialNumber'支持分隔符char。或者你有什么不同的要求? – TLama