Я занимаюсь разработкой веб-приложения, в котором используется распознавание отпечатков пальцев. Я использую XAMPP в Windows, работаю с устройством отпечатков пальцев SECUGEN и предоставляемым им API. Они дали образец HTML-файла, в котором они используют компонент ActiveX для доступа к устройству идентификации отпечатков пальцев из браузера. Это работает хорошо, когда я пытаюсь получить доступ через D:\files\sample.html
, я получаю подсказку, что «текущей странице нужен компонент activex, когда я говорю« да », она готова к использованию».
Но проблема начинается здесь. Я переместил этот файл (sample.html) в htdocs сервера XAMPP и попытался получить к нему доступ через http://localhost/app/sample.html
компонент ActiveX не загружается, я думаю.
Вот код:
<!DOCTYPE Html>
<html>
<head>
<title>ActiveX Example 1.1 of SecuGen FDx Pro SDK </title>
<script type="text/javascript">
<!--
var aaa = 0;
function fnOpenDevice()
{
for ( i=0; i<3; i++)
{
document.frmmain.objFP[i].DeviceID = document.frmmain.inc.value;
document.frmmain.objFP[i].CodeName = document.frmmain.dev.value;
document.frmmain.objFP[i].MinutiaeMode = document.frmmain.templateFormat.value;
}
// template format of objVerify should be the same to those of objFP[]
objVerify.MinutiaeMode = document.frmmain.templateFormat.value;
return;
}
function fnCapture(idx)
{
document.frmmain.objFP[idx].Capture();
var result = document.frmmain.objFP[idx].ErrorCode;
if (result == 0)
{
//var strimg1 = objFP.ImageTextData;
var strmin = document.frmmain.objFP[idx].MinTextData;
document.frmmain.min[idx].value = strmin;
}
else
alert('failed - ' + result);
return;
}
function fnRegister()
{
var strmin1 = document.frmmain.min[0].value;
var strmin2 = document.frmmain.min[1].value;
if ( objVerify.RegisterForText(strmin1, strmin2) && objVerify.ErrorCode == 0 )
alert('success- registered');
else
alert('failed - ' + objVerify.ErrorCode);
return;
}
function fnVerifyEx()
{
var strmin1 = document.frmmain.min[0].value;
var strmin2 = document.frmmain.min[1].value;
var strmin3 = document.frmmain.min[2].value;
if ( objVerify.VerifyExForText(strmin1, strmin2, strmin3) && objVerify.ErrorCode == 0)
alert('Success - matched');
else
alert('Failed - ' + objVerify.ErrorCode);
return;
}
function fnVerify()
{
var strmin1 = document.frmmain.min[0].value;
var strmin2 = document.frmmain.min[2].value;
if ( objVerify.VerifyForText(strmin1, strmin2) && objVerify.ErrorCode == 0 )
alert('Success - matched');
else
alert('Failed - ' + objVerify.ErrorCode);
return;
}
function fnSetimage()
{
document.frmmain.objFP.ImageTextData = document.frmmain.img1.value;
return;
}
// -->
</script>
</head>
<body>
<h4><b>ActiveX Example 1.1 of SecuGen FDx Pro SDK</b></h4>
<p></p>
<OBJECT id="objVerify" style="LEFT: 0px; TOP: 0px" height=0 width=0
classid="CLSID:8D613732-7D38-4664-A8B7-A24049B96117"name=objVerify VIEWASTEXT>
</OBJECT>
<form name=frmmain>
Device Type :
<select name="dev">
<option value="0">FDP02
<option value="1">FDU02
<option value="2">FDU03
<option selected value="3">FDU04
<option value="4">FDU05
</select>
Instance No. :
<select name="inc">
<option value="-1">-1
<option value="0" selected>0
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="5">5
<option value="6">6
<option value="7">7
<option value="8">8
<option value="9">9
</select>
<p>
Template Format:
<select name="templateFormat">
<option value="256">ANSI 378
<option value="512">SG 400
<option value="768">ISO 19794-2
</select>
<input type="button" name="open" value='Open Device' OnClick='fnOpenDevice();'>
<p>
<table border="1" cellspacing="0" cellpadding="0">
<caption> Fingerprint Images </caption>
<tr>
<td>
<OBJECT id="objFP" style="LEFT: 0px; WIDTH: 149px; TOP: 0px; HEIGHT: 182px" height="182"width="149" classid="CLSID:D547FDD7-82F6-44e8-AFBA-7553ADCEE7C8" name="objFP" VIEWASTEXT>
<PARAM NAME="CodeName" VALUE="1">
</OBJECT>
</td>
<td>
<OBJECT id="objFP" style="LEFT: 0px; WIDTH: 149px; TOP: 0px; HEIGHT: 182px" height="182"width="149" classid="CLSID:D547FDD7-82F6-44e8-AFBA-7553ADCEE7C8" name="objFP" VIEWASTEXT>
<PARAM NAME="CodeName" VALUE="1">
</OBJECT>
</td>
<td>
<OBJECT id="objFP" style="LEFT: 0px; WIDTH: 149px; TOP: 0px; HEIGHT: 182px" height="182"width="149" classid="CLSID:D547FDD7-82F6-44e8-AFBA-7553ADCEE7C8" name="objFP" VIEWASTEXT>
<PARAM NAME="CodeName" VALUE="1">
</OBJECT>
</td>
</tr>
<tr>
<td align="center"><input type="button" name="btnCapture1" value='Capture' OnClick='fnCapture(0);'></td>
<td align="center"><input type="button" name="btnCapture2" value='Capture' OnClick='fnCapture(1);'></td>
<td align="center"><input type="button" name="btnCapture3" value='Capture' OnClick='fnCapture(2);'></td>
</tr>
</table>
<p>
min1 : <input type="text" name="min"><br>
min2 : <input type="text" name="min"><br>
min3 : <input type="text" name="min">
<p>
<input type="button" name="btnRegister" value='Register' OnClick='fnRegister();' style='width:200px'>
<br>
<input type="button" name="btnVerify" value='VerifyEx' OnClick='fnVerifyEx();' style='width:200px'>
<br>
<input type="button" name="btnVerify" value='Verify' OnClick='fnVerify();' style='width:200px'>
</form>
</body>
</html>
В чем может быть проблема? Пожалуйста, дайте мне знать, если требуется какая-либо другая информация.
Вы должны добавить HTTP: // локальный разрешить список сайтов для управления ActiveX в т.е.
Ниже приведен шаг для включения управления ActiveX в т. Е.
Запустите Internet Explorer, нажмите Сервис -> Свойства обозревателя.
Перейдите на вкладку «Безопасность» и установите «Средний» в качестве уровня безопасности для зон Интернета и локальной интрасети.
Нажмите кнопку «Пользовательский уровень» и убедитесь, что для параметра «Включено» установлено следующее:
Запустите элементы управления ActiveX и плагины
Элементы управления ActiveX для сценариев отмечены как безопасные для сценариев
Нажмите OK после того, как эти настройки включены.
Нажмите значок «Надежные сайты» и нажмите кнопку «Сайты».
Снимите флажок перед Требовать проверку сервера (https:) для всех сайтов в этой зоне.
Заполните ваши локальные страницы (например, HTTP: // локальный) в поле Добавить этот сайт в поле зоны и нажмите кнопку Добавить.
Нажмите Закрыть.
Нажмите OK еще раз, чтобы сохранить изменения.
Перезапустите Internet Explorer и проверьте проблему.
Вы должны добавить https: // локальный для разрешения на вашем сайте для активного управления ActiveX в IE 9 или более поздней версии.
Вы должны добавить http://localhost
разрешить список сайтов для управления ActiveX в т.е.