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