qk2.0用不了

BUG反馈 · 2 次浏览
zdf153 创建于 12小时11分钟前

编译失败, Compilation, (14,18): error CS0234: 命名空间“System.Web”中不存在类型或命名空间名“Script”(是否缺少程序集引用?)
(164,30): error CS0246: 未能找到类型或命名空间名“JavaScriptSerializer”(是否缺少 using 指令或程序集引用?)
(282,30): error CS0246: 未能找到类型或命名空间名“JavaScriptSerializer”(是否缺少 using 指令或程序集引用?)
 
代码:  1.  using System;
  2.  using System.Text;
  3.  using System.Reflection;
  4.  using System.IO;
  5.  using System.Net;
  6.  using System.Net.Http;
  7.  using System.Collections;
  8.  using System.Collections.Generic;
  9.  using System.Collections.Concurrent;
 10.  using System.Text.RegularExpressions;
 11.  using System.Threading.Tasks;
 12.  using System.Linq;
 13.  using System.Diagnostics;
 14.  using System.Web.Script.Serialization;
 15.  using System.Windows.Forms;
 16.  
 17.  namespace __ScriptExecution {
 18.  
 19.  public class __8b8v659h
 20.  { 
 21.  
 22.  
 23.  // .cs 文件类型,便于外部编辑时使用
 24.  //css_ref System.Web.Extensions.dll;
 25.  // 引用必要的命名空间
 26.  // using System;
 27.  // using System.Collections.Generic;
 28.  // using System.Diagnostics;
 29.  // using System.IO;
 30.  // using System.Linq;
 31.  // using System.Text;
 32.  // using System.Text.RegularExpressions; 
 33.  // using System.Threading.Tasks;
 34.  // using System.Web.Script.Serialization;
 35.  // using System.Windows.Forms;
 36.  
 37.  //*************************************************************************************
 38.  //*
 39.  //* 文 件 名:   %OCR4.0%
 40.  //* 描    述:   实现RapidOCR-json.exe调用,支持单语言或多语言并行识别与结果智能合并
 41.  //*
 42.  //* 版    本:  V2.3
 43.  //* 创 建 者:  %Qyu%
 44.  //* 创建时间:  20250717
 45.  //* ======================================
 46.  //* 历史更新记录
 47.  //* 版本:V2.3  修改时间:20250722  修改人:Qyu
 48.  //* 修改内容:
 49.  //* 1.引入多线程多语言OCR功能
 50.  //* 2.根据输入文本的字符特征检测语言,再提取多语言分数最高的文本
 51.  //* ======================================
 52.  //*************************************************************************************
 53.  
 54.  
 55.  //Classes OcrResponse: 用于映射和存储JSON返回的数据
 56.  public class OcrResponse { public int code { get; set; } public object data { get; set; } }
 57.  public class OcrDataItem { public List<List<long>> box { get; set; } public double score { get; set; } public string text { get; set; } }
 58.  public class OcrTextBlock { public string Text { get; set; } public long Top { get; set; } public long Left { get; set; } }
 59.  
 60.  
 61.  // Quicker 将会调用的主函数
 62.  public class QuickerScript
 63.  {
 64.      private class OcrLanguageConfig
 65.      {
 66.          public string RecModel { get; set; }
 67.          public string KeysFile { get; set; }
 68.      }
 69.  
 70.      private static string DetectLanguage(string text)
 71.      {
 72.          if (string.IsNullOrEmpty(text)) return "未知";
 73.          if (Regex.IsMatch(text, @"[\u3040-\u309F\u30A0-\u30FF]")) return "日文";
 74.          if (Regex.IsMatch(text, @"[\uAC00-\uD7A3]")) return "韩文";
 75.          if (Regex.IsMatch(text, @"[\u0400-\u04FF]")) return "俄文";
 76.          if (Regex.IsMatch(text, @"[\u4e00-\u9fa5]")) return "中文";
 77.          if (Regex.IsMatch(text, @"[a-zA-Z]")) return "英文";
 78.          return "未知";
 79.      }
 80.  
 81.      public static void Exec(Quicker.Public.IStepContext context)
 82.      {
 83.          string ocrDirectory = context.GetVarValue("WorkingDirectory") as string;
 84.          if (string.IsNullOrWhiteSpace(ocrDirectory)) { MessageBox.Show("配置错误:\n\nQuicker变量 'WorkingDirectory' 未设置或为空。", "变量未找到", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
 85.          string imagePath = context.GetVarValue("imageToOcr") as string;
 86.          if (string.IsNullOrWhiteSpace(imagePath) || !File.Exists(imagePath)) { MessageBox.Show("配置错误:\n\nQuicker变量 'imageToOcr' 未设置、为空或文件不存在。", "变量或文件未找到", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
 87.          bool performViolentReplacement = context.GetVarValue("violentReplacement") as bool? ?? false;
 88.          string wayValue = context.GetVarValue("WayValue") as string;
 89.          bool useMultilingualOcr = context.GetVarValue("multilingualOcr") as bool? ?? false;
 90.          bool isImg = context.GetVarValue("isImg") as bool? ?? false;
 91.          string rawOutput;
 92.          if (useMultilingualOcr)
 93.          {
 94.              rawOutput = CallOcrProcessMultilingual(ocrDirectory, imagePath);
 95.          }
 96.          else
 97.          {
 98.              string modelsPath = Path.Combine(ocrDirectory, "models");
 99.              string arguments = string.Format("--models=\"{0}\" --det=ch_PP-OCRv4_det_infer.onnx --cls=ch_ppocr_mobile_v2.0_cls_infer.onnx --rec=rec_ch_PP-OCRv4_infer.onnx --keys=ppocr_keys_v1.txt --doAngle=0 --image_path=\"{1}\"", modelsPath, imagePath);
100.              rawOutput = CallOcrProcess(ocrDirectory, arguments);
101.          }
102.          if (string.IsNullOrWhiteSpace(rawOutput) || rawOutput.StartsWith("Error:"))
103.          {
104.              MessageBox.Show(rawOutput, "OCR 过程出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
105.              return;
106.          }
107.          string formattedText = ProcessOcrResponse(rawOutput, wayValue, performViolentReplacement);
108.          if (formattedText != null)
109.          {
110.              context.SetVarValue("formattedText", formattedText);
111.              if(!isImg){
112.                  Clipboard.SetText(formattedText);
113.              }
114.          }
115.      }
116.  
117.      private static string CallOcrProcessMultilingual(string ocrDirectory, string imagePath)
118.      {
119.          var languages = new Dictionary<string, OcrLanguageConfig>
120.          {
121.              {"Chinese_Simplified", new OcrLanguageConfig { RecModel = "rec_ch_PP-OCRv4_infer.onnx", KeysFile = "ppocr_keys_v1.txt" }},
122.              {"Chinese_Traditional", new OcrLanguageConfig { RecModel = "rec_chinese_cht_PP-OCRv3_infer.onnx", KeysFile = "dict_chinese_cht.txt" }},
123.              //{"English", new OcrLanguageConfig { RecModel = "rec_en_PP-OCRv3_infer.onnx", KeysFile = "dict_en.txt" }},
124.              {"Korean", new OcrLanguageConfig { RecModel = "rec_korean_PP-OCRv3_infer.onnx", KeysFile = "dict_korean.txt" }},
125.              {"Japanese", new OcrLanguageConfig { RecModel = "rec_japan_PP-OCRv3_infer.onnx", KeysFile = "dict_japan.txt" }},
126.              {"Cyrillic", new OcrLanguageConfig { RecModel = "rec_cyrillic_PP-OCRv3_infer.onnx", KeysFile = "dict_cyrillic.txt" }}
127.          };
128.          var tasks = new List<Task<Tuple<string, string>>>();
129.          string modelsPath = Path.Combine(ocrDirectory, "models");
130.          if (!Directory.Exists(modelsPath)) return string.Format("Error: 找不到 models 文件夹!\n请检查路径:{0}", modelsPath);
131.  
132.          const string commonArgs = "--det=ch_PP-OCRv4_det_infer.onnx --cls=ch_ppocr_mobile_v2.0_cls_infer.onnx --doAngle=0";
133.  
134.          foreach (var langPair in languages)
135.          {
136.              string langName = langPair.Key;
137.              OcrLanguageConfig langConfig = langPair.Value;
138.              string arguments = string.Format("--models=\"{0}\" {1} --rec={2} --keys={3} --image_path=\"{4}\"",
139.                  modelsPath, commonArgs, langConfig.RecModel, langConfig.KeysFile, imagePath);
140.              
141.              tasks.Add(Task.Run(() =>
142.              {
143.                  string result = CallOcrProcess(ocrDirectory, arguments);
144.                  return new Tuple<string, string>(langName, result);
145.              }));
146.          }
147.  
148.          Task.WhenAll(tasks).Wait();
149.          
150.          var languageToJsonResults = tasks
151.              .Where(t => t.Result != null && !string.IsNullOrWhiteSpace(t.Result.Item2) && !t.Result.Item2.StartsWith("Error:"))
152.              .ToDictionary(t => t.Result.Item1, t => t.Result.Item2);
153.  
154.          if (languageToJsonResults.Count == 0)
155.          {
156.              return "Error: 所有语言的OCR识别均失败或未返回有效数据。";
157.          }
158.  
159.          return MergeOcrResults(languageToJsonResults);
160.      }
161.  
162.      private static string MergeOcrResults(Dictionary<string, string> languageToJsonResults)
163.      {
164.          var serializer = new JavaScriptSerializer();
165.          var priorityLockedResults = new Dictionary<string, OcrDataItem>(); 
166.          var bestOverallResults = new Dictionary<string, OcrDataItem>(); 
167.  
168.          foreach (var langResultPair in languageToJsonResults)
169.          {
170.              string langName = langResultPair.Key;
171.              string json = langResultPair.Value;
172.  
173.              try
174.              {
175.                  var response = serializer.Deserialize<OcrResponse>(json);
176.                  if (response == null || response.code != 100 || response.data == null) continue;
177.                  var dataItems = serializer.ConvertToType<List<OcrDataItem>>(response.data);
178.                  if (dataItems == null) continue;
179.  
180.                  foreach (var item in dataItems)
181.                  {
182.                      if (item.box == null || item.box.Count < 4) continue;
183.                      var boxKeyBuilder = new StringBuilder();
184.                      foreach (var point in item.box) { boxKeyBuilder.Append(point[0]).Append(',').Append(point[1]).Append(';'); }
185.                      string boxKey = boxKeyBuilder.ToString();
186.                      
187.                      if (priorityLockedResults.ContainsKey(boxKey)) continue;
188.  
189.                      bool isLocked = false;
190.                      string detectedLanguage = DetectLanguage(item.text);
191.  
192.                      if ((langName == "Korean" && detectedLanguage == "韩文" && item.score >= 0.88) ||
193.                          (langName == "Japanese" && detectedLanguage == "日文" && item.score >= 0.88) ||
194.                          (langName == "Cyrillic" && detectedLanguage == "俄文" && item.score >= 0.88) ||
195.                          (langName == "English" && detectedLanguage == "英文" && item.score >= 0.9) ||
196.                          (langName == "Chinese_Traditional" && detectedLanguage == "中文" && item.score >= 0.95))
197.                      {
198.                          priorityLockedResults[boxKey] = item;
199.                          isLocked = true;
200.                      }
201.  
202.                      if (!isLocked)
203.                      {
204.                          if (!bestOverallResults.ContainsKey(boxKey) || item.score > bestOverallResults[boxKey].score)
205.                          {
206.                              bestOverallResults[boxKey] = item;
207.                          }
208.                      }
209.                  }
210.              }
211.              catch (Exception) { /* 忽略解析失败 */ }
212.          }
213.  
214.          foreach (var lockedPair in priorityLockedResults)
215.          {
216.              bestOverallResults[lockedPair.Key] = lockedPair.Value;
217.          }
218.  
219.          if (bestOverallResults.Count == 0)
220.          {
221.              return "{\"code\":101,\"data\":\"在所有语言的有效结果中未能合并任何文本。\"}";
222.          }
223.          
224.          var finalData = new List<OcrDataItem>(bestOverallResults.Values);
225.          finalData.Sort((a, b) => 
226.          {
227.              long topA = a.box[0][1];
228.              long topB = b.box[0][1];
229.              if (Math.Abs(topA - topB) <= 10) return a.box[0][0].CompareTo(b.box[0][0]);
230.              return topA.CompareTo(topB);
231.          });
232.  
233.          var finalResponse = new OcrResponse { code = 100, data = finalData };
234.          return serializer.Serialize(finalResponse);
235.      }
236.      
237.      private static string CallOcrProcess(string ocrDirectory, string arguments)
238.      {
239.          string exeFullPath = Path.Combine(ocrDirectory, "RapidOCR-json.exe");
240.          if (!File.Exists(exeFullPath)) return string.Format("Error: 找不到 OCR 程序文件!\n请检查路径:{0}", exeFullPath);
241.          var processStartInfo = new ProcessStartInfo
242.          {
243.              FileName = exeFullPath,
244.              Arguments = arguments,
245.              WorkingDirectory = ocrDirectory,
246.              UseShellExecute = false,
247.              RedirectStandardOutput = true,
248.              RedirectStandardError = true,
249.              CreateNoWindow = true,
250.              StandardOutputEncoding = Encoding.UTF8,
251.              StandardErrorEncoding = Encoding.UTF8
252.          };
253.          try
254.          {
255.              using (var process = new Process { StartInfo = processStartInfo })
256.              {
257.                  process.Start();
258.                  string output = process.StandardOutput.ReadToEnd();
259.                  string error = process.StandardError.ReadToEnd();
260.                  if (!process.WaitForExit(15000))
261.                  {
262.                      try { process.Kill(); } catch { }
263.                      return "Error: OCR 执行超时(超过15秒)!";
264.                  }
265.                  if (process.ExitCode == 0 && string.IsNullOrWhiteSpace(error))
266.                  {
267.                      int jsonStartIndex = output.IndexOf('{');
268.                      if (jsonStartIndex != -1) return output.Substring(jsonStartIndex).Trim();
269.                      return string.Format("Error: OCR进程成功执行,但输出中未找到JSON数据。\n原始输出:\n{0}", output);
270.                  }
271.                  return string.Format("Error: OCR 执行失败!\n退出码: {0}\n错误日志:\n{1}\n标准输出:\n{2}", process.ExitCode, error, output);
272.              }
273.          }
274.          catch (Exception ex)
275.          {
276.              return "Error: 运行脚本时发生严重异常: \n" + ex.ToString();
277.          }
278.      }
279.  
280.      private static string ProcessOcrResponse(string json, string wayValue, bool performViolentReplacement)
281.      {
282.          var serializer = new JavaScriptSerializer();
283.          try
284.          {
285.              var response = serializer.Deserialize<OcrResponse>(json);
286.              if (response == null) {
287.                   MessageBox.Show("解析JSON时返回了null。\n\n接收到的原始文本:\n" + json, "JSON解析失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
288.                   return null;
289.              }
290.              switch (response.code)
291.              {
292.                  case 100:
293.                      var dataItems = serializer.ConvertToType<List<OcrDataItem>>(response.data);
294.                      if (dataItems == null || dataItems.Count == 0)
295.                      {
296.                          MessageBox.Show("OCR成功返回(Code 100),但data数组为空。", "解析警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
297.                          return null;
298.                      }
299.                      var textBlocks = dataItems.Select(item => new OcrTextBlock {
300.                          Left = item.box[0][0],
301.                          Top = item.box[0][1],
302.                          Text = item.text
303.                      }).ToList();
304.                      string formattedText;
305.                      switch (wayValue)
306.                      {
307.                          case "line": formattedText = FormatTextWithLineMerging(textBlocks, false); break;
308.                          case "uniline": formattedText = ConvertToSingleLine(FormatTextWithLineMerging(textBlocks, false)); break;
309.                          case "Code": default: formattedText = FormatTextWithLineMerging(textBlocks, true); break;
310.                      }
311.                      if (performViolentReplacement) { formattedText = PerformViolentReplacement(formattedText); }
312.                      return formattedText;
313.                  case 101:
314.                      MessageBox.Show(string.Format("未识别到任何文字。\n\n信息: {0}", response.data), "OCR 结果", MessageBoxButtons.OK, MessageBoxIcon.Information);
315.                      return null;
316.                  case 200:
317.                      MessageBox.Show(string.Format("图片路径不存在。\n\n信息: {0}", response.data), "OCR 错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
318.                      return null;
319.                  default:
320.                      MessageBox.Show(string.Format("OCR返回了未知的状态码: {0}\n\n数据: {1}", response.code, response.data), "未知状态", MessageBoxButtons.OK, MessageBoxIcon.Warning);
321.                      return null;
322.              }
323.          }
324.          catch (Exception ex)
325.          {
326.              MessageBox.Show("解析JSON时发生严重错误。这通常意味着OCR工具返回了非标准的文本。\n\n错误详情: " + ex.Message + "\n\n接收到的原始文本:\n" + json, "JSON解析失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
327.              return null;
328.          }
329.      }
330.      
331.      public static string FormatTextWithLineMerging(List<OcrTextBlock> blocks, bool includeIndentation)
332.      {
333.          if (blocks == null || blocks.Count == 0) return "";
334.          int yTolerance = 10;
335.          blocks.Sort((a, b) => {
336.              if (Math.Abs(a.Top - b.Top) <= yTolerance) return a.Left.CompareTo(b.Left);
337.              return a.Top.CompareTo(b.Top);
338.          });
339.          var resultBuilder = new StringBuilder();
340.          if (blocks.Count == 0) return "";
341.          long lastTop = -1;
342.          int pixelsPerIndentLevel = 48;
343.          for (int i = 0; i < blocks.Count; i++)
344.          {
345.              var block = blocks[i];
346.              if (i > 0 && Math.Abs(block.Top - lastTop) > yTolerance)
347.              {
348.                  resultBuilder.AppendLine();
349.              }
350.              if (includeIndentation && (i == 0 || resultBuilder.ToString().EndsWith("\n") || resultBuilder.ToString().EndsWith("\r\n")))
351.              {
352.                  int numTabs = (int)Math.Round((double)block.Left / pixelsPerIndentLevel);
353.                  if (numTabs > 0) resultBuilder.Append(new string('\t', numTabs));
354.              }
355.              resultBuilder.Append(block.Text);
356.              lastTop = block.Top;
357.          }
358.          return resultBuilder.ToString();
359.      }
360.      
361.      private static string ConvertToSingleLine(string multilineText)
362.      {
363.          if (string.IsNullOrEmpty(multilineText)) return "";
364.          return multilineText.Replace("\r\n", " ").Replace("\n", " ").Replace("\r", " ").Trim();
365.      }
366.      
367.      private static string PerformViolentReplacement(string text)
368.      {
369.          if (string.IsNullOrEmpty(text)) return text;
370.          text = text.Replace("‘", "'").Replace("’", "'").Replace("“", "\"").Replace("”", "\"").Replace("(", "(").Replace(")", ")").Replace("【", "[").Replace("】", "]").Replace("{", "{").Replace("}", "}").Replace(",", ",").Replace(":", ":");
371.          text = text.Replace("[o]", "\"[0]\"");
372.          var lines = text.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
373.          var resultBuilder = new StringBuilder();
374.          foreach (var line in lines)
375.          {
376.              if (string.IsNullOrWhiteSpace(line)) { resultBuilder.AppendLine(); continue; }
377.              string trimmedLine = line.Trim();
378.              if (trimmedLine.Length == 1)
379.              {
380.                  int indentIndex = line.IndexOf(trimmedLine[0]);
381.                  string indent = (indentIndex >= 0) ? line.Substring(0, indentIndex) : "";
382.                  if (trimmedLine == "3" || trimmedLine == "}" || trimmedLine == "》") { resultBuilder.AppendLine(indent + "}"); }
383.                  else if (trimmedLine == "1" || trimmedLine == "t" || trimmedLine == "T" || trimmedLine == "{" || trimmedLine == "《") { resultBuilder.AppendLine(indent + "{"); }
384.                  else { resultBuilder.AppendLine(line); }
385.              }
386.              else { resultBuilder.AppendLine(line); }
387.          }
388.          return resultBuilder.ToString().TrimEnd('\r', '\n', ' ');
389.      }
390.  }
391.  
392.  
393.  } 
394.  }

当前引用:C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\Microsoft.CSharp.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\Microsoft.Win32.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\Microsoft.Win32.Registry.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\mscorlib.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\netstandard.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Collections.Concurrent.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Collections.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Collections.Immutable.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Collections.NonGeneric.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Collections.Specialized.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ComponentModel.Annotations.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ComponentModel.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ComponentModel.EventBasedAsync.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ComponentModel.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ComponentModel.TypeConverter.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Console.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Core.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Data.Common.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.Debug.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.DiagnosticSource.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.FileVersionInfo.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.Process.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.StackTrace.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.TraceSource.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Diagnostics.Tracing.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Drawing.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Globalization.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.IO.Compression.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.IO.FileSystem.Watcher.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.IO.Pipes.AccessControl.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.IO.Pipes.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Linq.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Linq.Expressions.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Linq.Parallel.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Linq.Queryable.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Memory.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.Http.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.NameResolution.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.Requests.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.Security.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.Sockets.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.WebClient.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.WebHeaderCollection.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Net.WebProxy.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Numerics.Vectors.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.ObjectModel.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Private.CoreLib.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Private.DataContractSerialization.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Private.Uri.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Private.Xml.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Private.Xml.Linq.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Reflection.Emit.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Reflection.Emit.ILGeneration.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Reflection.Emit.Lightweight.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Reflection.Metadata.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Reflection.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Resources.Writer.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.CompilerServices.VisualC.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Extensions.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.InteropServices.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Intrinsics.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Loader.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Numerics.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Serialization.Formatters.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Serialization.Json.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Serialization.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Runtime.Serialization.Xml.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Security.AccessControl.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Security.Claims.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Security.Cryptography.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Security.Principal.Windows.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Text.Encoding.CodePages.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Text.Encoding.Extensions.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Text.Encodings.Web.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Text.Json.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Text.RegularExpressions.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Threading.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Threading.Overlapped.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Threading.Tasks.Parallel.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Threading.Thread.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Threading.ThreadPool.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Web.HttpUtility.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Xml.Linq.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Xml.ReaderWriter.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Xml.XDocument.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Xml.XmlSerializer.dll
C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.8\System.Xml.XPath.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\Accessibility.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\DirectWriteForwarder.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\Microsoft.Win32.SystemEvents.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationCore.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework-SystemCore.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework-SystemData.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework-SystemXml.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework-SystemXmlLinq.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework.Aero2.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\PresentationFramework.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Configuration.ConfigurationManager.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Diagnostics.EventLog.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Drawing.Common.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Drawing.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.IO.Packaging.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Private.Windows.Core.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Private.Windows.GdiPlus.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Security.Cryptography.ProtectedData.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Windows.Controls.Ribbon.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Windows.Extensions.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Windows.Forms.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Windows.Forms.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Windows.Primitives.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\System.Xaml.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\UIAutomationProvider.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\UIAutomationTypes.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\WindowsBase.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\WindowsFormsIntegration.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\zh-Hans\PresentationCore.resources.dll
C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.8\zh-Hans\PresentationFramework.resources.dll
C:\Program Files\Quicker\CommunityToolkit.Mvvm.dll
C:\Program Files\Quicker\CSScriptLibrary.dll
C:\Program Files\Quicker\Dapper.StrongName.dll
C:\Program Files\Quicker\DotNetProjects.SVGImage.dll
C:\Program Files\Quicker\DotNetProjects.Wpf.Extended.Toolkit.dll
C:\Program Files\Quicker\DynamicData.dll
C:\Program Files\Quicker\DynamicExpresso.Core.dll
C:\Program Files\Quicker\FontAwesomeIconsWpf.dll
C:\Program Files\Quicker\GongSolutions.WPF.DragDrop.dll
C:\Program Files\Quicker\HandyControl.dll
C:\Program Files\Quicker\HL.dll
C:\Program Files\Quicker\ICSharpCode.AvalonEdit.dll
C:\Program Files\Quicker\log4net.dll
C:\Program Files\Quicker\MdXaml.SyntaxHigh.dll
C:\Program Files\Quicker\Microsoft.CodeAnalysis.CSharp.dll
C:\Program Files\Quicker\Microsoft.CodeAnalysis.dll
C:\Program Files\Quicker\Microsoft.Data.Sqlite.dll
C:\Program Files\Quicker\Microsoft.Extensions.Caching.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Caching.Memory.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.Binder.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.CommandLine.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.EnvironmentVariables.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.FileExtensions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.Json.dll
C:\Program Files\Quicker\Microsoft.Extensions.Configuration.UserSecrets.dll
C:\Program Files\Quicker\Microsoft.Extensions.DependencyInjection.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.DependencyInjection.dll
C:\Program Files\Quicker\Microsoft.Extensions.Diagnostics.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Diagnostics.dll
C:\Program Files\Quicker\Microsoft.Extensions.FileProviders.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.FileProviders.Physical.dll
C:\Program Files\Quicker\Microsoft.Extensions.FileSystemGlobbing.dll
C:\Program Files\Quicker\Microsoft.Extensions.Hosting.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Hosting.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.Abstractions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.Configuration.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.Console.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.Debug.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.EventLog.dll
C:\Program Files\Quicker\Microsoft.Extensions.Logging.EventSource.dll
C:\Program Files\Quicker\Microsoft.Extensions.Options.ConfigurationExtensions.dll
C:\Program Files\Quicker\Microsoft.Extensions.Options.dll
C:\Program Files\Quicker\Microsoft.Extensions.Primitives.dll
C:\Program Files\Quicker\Microsoft.Windows.SDK.NET.dll
C:\Program Files\Quicker\Microsoft.WindowsAPICodePack.dll
C:\Program Files\Quicker\Microsoft.WindowsAPICodePack.Shell.dll
C:\Program Files\Quicker\NAudio.Wasapi.dll
C:\Program Files\Quicker\Newtonsoft.Json.dll
C:\Program Files\Quicker\NuGet.Versioning.dll
C:\Program Files\Quicker\Python.Runtime.dll
C:\Program Files\Quicker\Quicker.3rd.dll
C:\Program Files\Quicker\Quicker.Common.dll
C:\Program Files\Quicker\Quicker.Contracts.dll
C:\Program Files\Quicker\Quicker.dll
C:\Program Files\Quicker\Quicker.ExpressionEngine.dll
C:\Program Files\Quicker\Quicker.PInvoke.dll
C:\Program Files\Quicker\Quicker.Public.dll
C:\Program Files\Quicker\Quicker.StepEngine.dll
C:\Program Files\Quicker\Quicker.Utilities.dll
C:\Program Files\Quicker\Quicker.Wpf.dll
C:\Program Files\Quicker\Sentry.dll
C:\Program Files\Quicker\SharpVectors.Converters.Wpf.dll
C:\Program Files\Quicker\SharpVectors.Core.dll
C:\Program Files\Quicker\SharpVectors.Css.dll
C:\Program Files\Quicker\SharpVectors.Dom.dll
C:\Program Files\Quicker\SharpVectors.Model.dll
C:\Program Files\Quicker\SharpVectors.Rendering.Wpf.dll
C:\Program Files\Quicker\SharpVectors.Runtime.Wpf.dll
C:\Program Files\Quicker\SimpleNamedPipe.dll
C:\Program Files\Quicker\SQLite3MC.PCLRaw.provider.dll
C:\Program Files\Quicker\SQLitePCLRaw.batteries_v2.dll
C:\Program Files\Quicker\SQLitePCLRaw.core.dll
C:\Program Files\Quicker\System.Management.dll
C:\Program Files\Quicker\System.Net.Http.Formatting.dll
C:\Program Files\Quicker\System.Reactive.dll
C:\Program Files\Quicker\System.Speech.dll
C:\Program Files\Quicker\ToastNotifications.dll
C:\Program Files\Quicker\ToastNotifications.Messages.dll
C:\Program Files\Quicker\WindowsInput.dll
C:\Program Files\Quicker\WinRT.Runtime.dll
C:\Program Files\Quicker\Z.Expressions.Eval.dll
C:\Program Files\Quicker\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll
C:\Users\Administrator\Documents\Quicker\_packages\cea.quicker-expression-enhanced\1.0.25\QuickerExpressionEnhanced.1.0.25.0.dll
C:\Users\Administrator\Documents\Quicker\ActionPanel_Ceastld\ActionPanelControl1.8805.exe
(----离线OCR4.0v15:运行C#代码----)


回复内容
暂无回复
回复主贴