我在 C# 的表单上使用 Awesomium WebControl,我试图将信息传递到浏览器中,表明 USB 设备已插入我有 USB 检测工作,但由于某种原因,我无法JSObject()
使用每个值构建设备插入其中。
这是将设备插入计算机时触发的代码
JSObject js_obj;
DriveInfo[] allDrives = DriveInfo.GetDrives();
JSValue[] js_arr = new JSValue[allDrives.Count()];
int count = 0;
foreach (DriveInfo drive in allDrives)
{
if (drive.IsReady == true)
{
if (drive.DriveType == DriveType.Removable)
{
js_obj = new JSObject();
js_obj["Id"] = new JSValue("");
js_obj["TimeAdded"] = new JSValue("");
js_obj["DriveLetters"] = new JSValue(drive.VolumeLabel);
js_obj["Port"] = new JSValue("");
js_arr[count] = new JSValue(js_obj);
count++;
}
}
}
this.Browser.CallJavascriptFunction("DiskDetector", "DeviceAdded", js_arr);
但是当我在 js_arr 添加一个断点this.Browser.CallJavascriptFunction("DiskDetector", "DeviceAdded", js_arr);
是一个 4 的数组,其中所有的值都是空的
我认为问题是我使用 JSObject 和设置值 JSObject Extends IDisposable 并且我虽然必须全部 Add("key", "Value"); 但该方法不适合我使用