Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从扫描仪(类似键盘的)设备C#.net获取输入字符串_C#_.net_String_Input_Hardware - Fatal编程技术网

从扫描仪(类似键盘的)设备C#.net获取输入字符串

从扫描仪(类似键盘的)设备C#.net获取输入字符串,c#,.net,string,input,hardware,C#,.net,String,Input,Hardware,对不起,如果这个问题措辞古怪。我有一个信用卡扫描器,当刷卡时,它将充当键盘,如果你在记事本这样的文本编辑器中输入。我想在我的asp.net 5 mvc 6应用程序中使用这个设备,并让它将输入正确地输入到字符串变量中。输入也从一个制表符开始,进入两个单词,然后是两个制表符,然后是一串数字和字母(不再有制表符)。那些标签好像把我的输入搞乱了。我试着把它放到一个输入框中,但没有用,因为选项卡会改变上下文,让它在地址栏中键入字符串。我正在为此使用Microsoft Edge。我还尝试使用: while(

对不起,如果这个问题措辞古怪。我有一个信用卡扫描器,当刷卡时,它将充当键盘,如果你在记事本这样的文本编辑器中输入。我想在我的asp.net 5 mvc 6应用程序中使用这个设备,并让它将输入正确地输入到字符串变量中。输入也从一个制表符开始,进入两个单词,然后是两个制表符,然后是一串数字和字母(不再有制表符)。那些标签好像把我的输入搞乱了。我试着把它放到一个输入框中,但没有用,因为选项卡会改变上下文,让它在地址栏中键入字符串。我正在为此使用Microsoft Edge。我还尝试使用:

while(string.IsNullOrEmpty(input))
{
    Console.Write("Waiting for card swipe...");
    input = Console.ReadLine();
}
同样,开头的标签和第一个标签后面第一个单词后面的标签都搞乱了。关于我应该使用什么方法将这个输入输入到字符串变量中,有什么想法吗?我必须对这个标签问题做些什么吗?任何帮助都将不胜感激。谢谢你抽出时间

如中所述,您需要覆盖web浏览器的选项卡功能以执行不同的操作,以便将其记录在测试字段中。您需要实现一些JavaScript,然后检查关键事件编号9,如下所示:

textarea.observe('keydown', function (e) {
    if(e.keyCode==9) {
        e.element().insert("\t");
        e.stop();
    }
}
否则,我就找不到解决办法了

[编辑]
或者你可以使用jQuery插件,我不得不为另一个应用程序实现一个条形码扫描器,最后我求助于类似的东西来实际获取原始输入。否则.Net会将所有键盘视为一个键盘,它也会缓冲输入,因此最终我求助于访问Win32设备。是否要覆盖web浏览器中的标准选项卡功能?如果是这样的话,您需要一些Javascript,如下所示:使用条形码扫描仪,您至少可以配置在实际值之前和之后发送的字符。检查此设备是否可行,很可能是