c# 操作ppt

<pre class="brush:c#;toolbar:false">.在项目中添加引用&nbsp;Microsoft&nbsp;PowerPoint&nbsp;14.0&nbsp;Object&nbsp;Library2.&nbsp;using&nbsp;Microsoft.Office.Interop.PowerPoint; 1.创建一个PPT,添加一个空白页 Microsoft.Office.Interop.PowerPoint.Application&nbsp;PPT&nbsp;=&nbsp;new&nbsp;Microsoft.Office.Interop.PowerPoint.Application();//创建PPT应用 Microsoft.Office.Interop.PowerPoint.Presentation&nbsp;MyPres&nbsp;=&nbsp;null;//PPT应用的实例 Microsoft.Office.Interop.PowerPoint.Slide&nbsp;MySlide&nbsp;=&nbsp;null;//PPT中的幻灯片 MyPres&nbsp;=&nbsp;PPT.Presentations.Open(&quot;文件路径&quot;,&nbsp;MsoTriState.msoFalse,&nbsp;MsoTriState.msoFalse,&nbsp;MsoTriState.msoTrue);//此处将一个PPT实例给了MyPres MySlide&nbsp;=&nbsp;MyPres.Slides.Add(1,&nbsp;Microsoft.Office.Interop.PowerPoint.PpSlideLayout.ppLayoutBlank);//像PPT实例中,添加一个空白页,位置是“第一页” 2.向PPT的幻灯片中添加元素 2.1文本框 Microsoft.Office.Interop.PowerPoint.TextRange&nbsp;MyTextRng&nbsp;=&nbsp;null; MySlide.Shapes.AddTextbox(MsoTextOrientation.msoTextOrientationHorizontal,&nbsp;21.5F,&nbsp;365F,&nbsp;670F,&nbsp;270F); MyTextRng&nbsp;=&nbsp;MySlide.Shapes[1].TextFrame.TextRange;//请注意此处Shapes的索引,由于文本框是第一个添加的Shapes,所以此处索引是1。 MyTextRng.Font.NameFarEast&nbsp;=&nbsp;&quot;微软雅黑&quot;;//文本框中,中文的字体&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MyTextRng.Font.NameAscii&nbsp;=&nbsp;&quot;Calibri&quot;;//文本框中,英文和数字的字体&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MyTextRng.Text&nbsp;=&quot;C#生成PPT&quot;;//显示的内容 MyTextRng.Font.Bold&nbsp;=&nbsp;MsoTriState.msoTrue;//是否加粗 MyTextRng.Font.Color.RGB&nbsp;=&nbsp;A+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256;//字体颜色,其中ABC直接用自定义颜色中的数字代替即可。 MyTextRng.Characters(1,&nbsp;10).Font.Size&nbsp;=&nbsp;24;//个性化设计。第1个字符开始,长度为10的字符,字体大小是24. MyTextRng.ParagraphFormat.Alignment&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.PpParagraphAlignment.ppAlignLeft;//文本对齐方式(水平方向) MySlide.Shapes[1].TextFrame.VerticalAnchor&nbsp;=&nbsp;MsoVerticalAnchor.msoAnchorMiddle;&nbsp;文本对齐方式(垂直方向) 心得:最重要的设置在Font属性中。其他设置,基本可以参考PPT中元素属性的设置方式来找到。比如我在写文本水平对齐方式时(左对齐,居中,右对齐),在PPT中,我们直接点击“段落”中的快捷键即可。所以我就找“段落”的英文,正好Alignment是对齐的意思,所以就找到了。 2.2&nbsp;图形(矩形) MySlide.Shapes.AddShape(MsoAutoShapeType.msoShapeRectangle,&nbsp;8.5F,&nbsp;6.5F,&nbsp;705F,&nbsp;525F); MySlide.Shapes[1].Line.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256;//改变线条颜色 MySlide.Shapes[1].Fill.Transparency&nbsp;=&nbsp;1;//控制填充色为透明 MySlide.Shapes[1].Line.Style&nbsp;=&nbsp;MsoLineStyle.msoLineSingle;//改变线型里的复合类型 MySlide.Shapes[1].Line.Weight&nbsp;=&nbsp;1F;//改变线粗细 MySlide.Shapes[1].Shadow.Style&nbsp;=&nbsp;MsoShadowStyle.msoShadowStyleOuterShadow;//控制阴影类型 MySlide.Shapes[1].Shadow.ForeColor.RGB&nbsp;=&nbsp;0;//控制阴影颜色 MySlide.Shapes[1].Shadow.Transparency&nbsp;=&nbsp;0.6F;//控制透明度 MySlide.Shapes[1].Shadow.Size&nbsp;=&nbsp;100F;//控制大小 MySlide.Shapes[1].Shadow.Blur&nbsp;=&nbsp;4F;//控制虚化 MySlide.Shapes[1].Shadow.OffsetX&nbsp;=&nbsp;2.1F;//控制距离; MySlide.Shapes[1].Shadow.OffsetY&nbsp;=&nbsp;2.1F;//与offsetX共同决定角度 心得:基本的一些设置,通过英文就可以辨别。不过有些属性的设置是否与预期一致,需要等图形生成后再进一步确认。 2.3&nbsp;图片 MySlide.Shapes.AddPicture(&quot;文件路径&quot;,&nbsp;MsoTriState.msoFalse,&nbsp;MsoTriState.msoTrue,&nbsp;27F,&nbsp;24F,&nbsp;665F,&nbsp;333F); 2.4&nbsp;表格 Microsoft.Office.Interop.PowerPoint.Table&nbsp;MyTable&nbsp;=&nbsp;null; MyTable&nbsp;=&nbsp;MySlide.Shapes.AddTable(19,&nbsp;5,&nbsp;40F,&nbsp;100F,&nbsp;10F,&nbsp;10F).Table;//创建时规定的宽和高,不是表格最终的大小。 MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Font.Size&nbsp;=&nbsp;10; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Font.Color.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Font.NameAscii&nbsp;=&nbsp;&quot;Arial&quot;; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Font.NameFarEast&nbsp;=&nbsp;&quot;微软雅黑&quot;; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Font.Bold&nbsp;=&nbsp;MsoTriState.msoTrue; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.ParagraphFormat.Alignment&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.PpParagraphAlignment.ppAlignCenter; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.VerticalAnchor&nbsp;=&nbsp;MsoVerticalAnchor.msoAnchorMiddle; MyTable.Cell(k,&nbsp;j).Shape.Fill.ForeColor.RGB&nbsp;=&nbsp;0; MyTable.Cell(k,&nbsp;j).Shape.TextFrame.TextRange.Text&nbsp;=&nbsp;&quot;C#生成PPT&quot;; 这里的设置,几乎和文本框的设置一样。只不过需要先选定Cell。一些个性化的设计,比如合并拆分单元格,边框颜色,按照一般的英文意思都能找到。 2.5&nbsp;图表 Microsoft.Office.Interop.PowerPoint.Chart&nbsp;MyChart&nbsp;=&nbsp;null;//图表 Microsoft.Office.Interop.PowerPoint.ChartData&nbsp;MyChartData&nbsp;=&nbsp;null;//图表的数据源 Microsoft.Office.Interop.PowerPoint.Axis&nbsp;MyYvalaxis&nbsp;=&nbsp;null;//图表的纵坐标 Microsoft.Office.Interop.PowerPoint.Axis&nbsp;MyXvalaxis&nbsp;=&nbsp;null;//图表的横坐标 Microsoft.Office.Interop.PowerPoint.DataLabels&nbsp;MyDataLabels&nbsp;=&nbsp;null;//图表的数据标签 Microsoft.Office.Interop.PowerPoint.Series&nbsp;MySeries&nbsp;=&nbsp;null;//数据系列 Microsoft.Office.Interop.PowerPoint.ChartGroups&nbsp;MyChartGroups&nbsp;=&nbsp;null;//数据系列-系列选项 Microsoft.Office.Interop.PowerPoint.Points&nbsp;MyPoints&nbsp;=&nbsp;null;&nbsp;//数据系列 MyChart&nbsp;=&nbsp;MySlide.Shapes.AddChart(Microsoft.Office.Core.XlChartType.xlColumnClustered,&nbsp;35F,&nbsp;205F,&nbsp;642F,&nbsp;227F).Chart;//添加柱形图 MyChartData&nbsp;=&nbsp;MyChart.ChartData;//实例化数据源 Microsoft.Office.Interop.Excel.Workbook&nbsp;MyDataWorkbook_2&nbsp;=&nbsp;(Microsoft.Office.Interop.Excel.Workbook)MyChartData.Workbook;//由于PPT的数据源是EXCEL工作表,所以此处还要调用EXCEL。 MyDataWorkbook_2.Application.WindowState&nbsp;=&nbsp;XlWindowState.xlMinimized;//不想看那么多窗口,所以最小化了。 Microsoft.Office.Interop.Excel.Worksheet&nbsp;MyDataWorksheet_2&nbsp;=&nbsp;(Microsoft.Office.Interop.Excel.Worksheet)MyDataWorkbook_2.Worksheets[1];//实例化工作表 Microsoft.Office.Interop.Excel.Range&nbsp;tRange_2&nbsp;=&nbsp;MyDataWorksheet_2.Cells.get_Range(&quot;A1&quot;,&nbsp;&quot;C10&quot;);//选定数据区域 Microsoft.Office.Interop.Excel.ListObject&nbsp;tbl1_2&nbsp;=&nbsp;MyDataWorksheet_2.ListObjects[1]; tbl1_2.Resize(tRange_2); //赋值&nbsp;&nbsp; ((Microsoft.Office.Interop.Excel.Range)(MyDataWorksheet_2.Cells.get_Range(&quot;A2&quot;))).FormulaR1C1&nbsp;=&nbsp;&quot;全国得分&quot;; ((Microsoft.Office.Interop.Excel.Range)(MyDataWorksheet_2.Cells.get_Range(&quot;A3&quot;))).FormulaR1C1&nbsp;=&nbsp;null; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //图表标题 MyChart.ChartTitle.Delete(); //纵轴 MyYvalaxis&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.Axis)MyChart.Axes(Microsoft.Office.Interop.PowerPoint.XlAxisType.xlValue,&nbsp;Microsoft.Office.Interop.PowerPoint.XlAxisGroup.xlPrimary); MyYvalaxis.MajorGridlines.Delete();//删除主横网络线 MyYvalaxis.MajorUnit&nbsp;=&nbsp;0.5F; MyYvalaxis.MinimumScale&nbsp;=&nbsp;0.0F; MyYvalaxis.MaximumScale&nbsp;=&nbsp;1.5F; MyYvalaxis.Format.Line.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256;&nbsp;;//坐标轴颜色 MyYvalaxis.Format.Line.Transparency&nbsp;=&nbsp;1F;//坐标轴是否透明;此句必须先指定颜色,否则无效&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MyYvalaxis.TickLabels.Delete();//删除坐标标签 //横轴 MyXvalaxis&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.Axis)MyChart.Axes(Microsoft.Office.Interop.PowerPoint.XlAxisType.xlCategory,&nbsp;Microsoft.Office.Interop.PowerPoint.XlAxisGroup.xlPrimary); MyXvalaxis.MajorTickMark&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.XlTickMark.xlTickMarkOutside;//主要刻度线类型 MyXvalaxis.Format.Line.Weight&nbsp;=&nbsp;0.75F;//线型宽度 MyXvalaxis.Format.Line.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256;//线条颜色 MyXvalaxis.TickLabelPosition&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.XlTickLabelPosition.xlTickLabelPositionNone; //图例 MyChart.Legend.Delete(); //数据标签格式和系列 //系列1 MySeries&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.Series)MyChart.SeriesCollection(1); MySeries.HasDataLabels&nbsp;=&nbsp;true; MySeries.Format.Fill.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256; MySeries.Format.Line.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256; MySeries.Format.Line.Weight&nbsp;=&nbsp;1.5F; MySeries.Format.Shadow.Style&nbsp;=&nbsp;MsoShadowStyle.msoShadowStyleOuterShadow;//控制阴影类型 MySeries.Format.Shadow.ForeColor.RGB&nbsp;=&nbsp;0;//控制阴影颜色 MySeries.Format.Shadow.Transparency&nbsp;=&nbsp;0.6F;//控制透明度 MySeries.Format.Shadow.Size&nbsp;=&nbsp;100F;//控制大小 MySeries.Format.Shadow.Blur&nbsp;=&nbsp;4F;//控制虚化 MySeries.Format.Shadow.OffsetX&nbsp;=&nbsp;2.1F;//控制距离;&nbsp; MySeries.Format.Shadow.OffsetY&nbsp;=&nbsp;2.1F;//与offsetX共同决定角度 //柱子颜色 MyPoints&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.Points)MySeries.Points(); MyPoints.Item(1).Format.Fill.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;*&nbsp;256;//系列1中,第1个柱子的颜色 //柱子距离 MyChartGroups&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.ChartGroups)MyChart.ChartGroups(); MyChartGroups.Item(1).GapWidth&nbsp;=&nbsp;50; //数据标签 MyDataLabels&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.DataLabels)MySeries.DataLabels(); MyDataLabels.Position&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.XlDataLabelPosition.xlLabelPositionOutsideEnd; MyDataLabels.NumberFormat&nbsp;=&nbsp;&quot;0.0%&quot;; MyDataLabels.Format.TextFrame2.TextRange.Font.Size&nbsp;=&nbsp;9F; MyDataLabels.Format.TextFrame2.TextRange.Font.NameAscii&nbsp;=&nbsp;&quot;Calibri&quot;; MyDataLabels.Format.TextFrame2.TextRange.Font.Bold&nbsp;=&nbsp;MsoTriState.msoTrue; //系列2 MySeries&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.Series)MyChart.SeriesCollection(2); MySeries.HasDataLabels&nbsp;=&nbsp;true; MySeries.Format.Fill.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256; MySeries.Format.Line.ForeColor.RGB&nbsp;=&nbsp;A&nbsp;+&nbsp;B&nbsp;*&nbsp;256&nbsp;+&nbsp;C&nbsp;*&nbsp;256&nbsp;*&nbsp;256; MySeries.Format.Line.Weight&nbsp;=&nbsp;1.5F; MySeries.Format.Shadow.Style&nbsp;=&nbsp;MsoShadowStyle.msoShadowStyleOuterShadow;//控制阴影类型 MySeries.Format.Shadow.ForeColor.RGB&nbsp;=&nbsp;0;//控制阴影颜色 MySeries.Format.Shadow.Transparency&nbsp;=&nbsp;0.6F;//控制透明度 MySeries.Format.Shadow.Size&nbsp;=&nbsp;100F;//控制大小 MySeries.Format.Shadow.Blur&nbsp;=&nbsp;4F;//控制虚化 MySeries.Format.Shadow.OffsetX&nbsp;=&nbsp;2.1F;//控制距离 MySeries.Format.Shadow.OffsetY&nbsp;=&nbsp;2.1F;//与offsetX共同决定角度 //柱子距离 MyChartGroups&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.ChartGroups)MyChart.ChartGroups(); MyChartGroups.Item(1).GapWidth&nbsp;=&nbsp;50; //数据标签 MyDataLabels&nbsp;=&nbsp;(Microsoft.Office.Interop.PowerPoint.DataLabels)MySeries.DataLabels(); MyDataLabels.Position&nbsp;=&nbsp;Microsoft.Office.Interop.PowerPoint.XlDataLabelPosition.xlLabelPositionOutsideEnd; MyDataLabels.NumberFormat&nbsp;=&nbsp;&quot;0.0%&quot;; MyDataLabels.Format.TextFrame2.TextRange.Font.Size&nbsp;=&nbsp;9F; MyDataLabels.Format.TextFrame2.TextRange.Font.NameAscii&nbsp;=&nbsp;&quot;Calibri&quot;; MyDataLabels.Format.TextFrame2.TextRange.Font.Italic&nbsp;=&nbsp;MsoTriState.msoTrue;</pre><p><br/></p>
2020/2/1 12:56:48(zgc) 抢沙发(0) 个人作品
阅读全文

磁盘目录显示foldersizes

<p>foldersizes</p>
2019/12/23 17:02:02(zgc) 抢沙发(0) 杂项
阅读全文

git for winxp

<p>git for winxp</p>
2019/9/29 22:27:16(zgc) 抢沙发(0) 个人作品
阅读全文

SQL查询分析器

<p>&nbsp;SQL查询分析器</p>
2019/9/29 21:36:05(zgc) 抢沙发(0) 个人作品
阅读全文

openwebkitsource

<p>openwebkitsource</p>
2019/9/19 10:48:10(zgc) 抢沙发(0) Net技术
阅读全文

cefsharp 使用范例!

<pre class="brush:c#;toolbar:false">using&nbsp;System; using&nbsp;System.Collections.Generic; using&nbsp;System.ComponentModel; using&nbsp;System.Data; using&nbsp;System.Drawing; using&nbsp;System.Linq; using&nbsp;System.Text; using&nbsp;System.Windows.Forms; using&nbsp;CefSharp; using&nbsp;System.Security.Permissions; using&nbsp;System.Runtime.InteropServices; using&nbsp;System.Configuration; using&nbsp;System.IO; namespace&nbsp;WindowsFormsApplication1 { &nbsp;&nbsp;&nbsp;&nbsp;//[PermissionSet(SecurityAction.Demand,&nbsp;Name&nbsp;=&nbsp;&quot;FullTrust&quot;)] &nbsp;&nbsp;&nbsp;&nbsp;//[ComVisible(true)]//COM+组件可见 &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;partial&nbsp;class&nbsp;FrmWebCef&nbsp;:&nbsp;Form &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;string&nbsp;url=&quot;&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;FrmWebCef(string&nbsp;_url) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InitializeComponent(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url&nbsp;=&nbsp;ConfigurationManager.AppSettings[&quot;url&quot;].ToString(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch&nbsp;{&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;void&nbsp;Form1_Load(object&nbsp;sender,&nbsp;EventArgs&nbsp;e) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CefSettings&nbsp;settings&nbsp;=&nbsp;new&nbsp;CefSettings(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;settings.Locale&nbsp;=&nbsp;&quot;zh-CN&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;settings.CachePath&nbsp;=&nbsp;Directory.GetCurrentDirectory()&nbsp;+&nbsp;@&quot;\Cache&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//settings.AcceptLanguageList=&quot;zh-CN&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;settings.CefCommandLineArgs.Add(&quot;disable-application-cache&quot;,&nbsp;&quot;1&quot;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;settings.CefCommandLineArgs.Add(&quot;disable-session-storage&quot;,&nbsp;&quot;1&quot;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!Cef.IsInitialized)&nbsp;Cef.Initialize(settings); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Cef.Initialize(settings); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CefSharp.WinForms.ChromiumWebBrowser&nbsp;wb&nbsp;=&nbsp;new&nbsp;CefSharp.WinForms.ChromiumWebBrowser(url); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wb.Dock&nbsp;=&nbsp;DockStyle.Fill; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;CefSharp.CefSettings&nbsp;settings&nbsp;=&nbsp;new&nbsp;CefSharp.CefSettings(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;////&nbsp;settings.&nbsp;=&nbsp;&quot;zh-CN&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;settings.Locale&nbsp;=&nbsp;&quot;zh-CN&quot;; ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;html&gt;&lt;head&gt;&lt;meta&nbsp;http-equiv=&quot;content-type&quot;&nbsp;content=&quot;text/html;charset=GBK&quot;&gt; ////&lt;/head&gt;&lt;body&gt;&lt;input&nbsp;type=&quot;text&quot;&nbsp;value=&quot;send&quot;&nbsp;id=&quot;input&quot;&gt; ////&lt;input&nbsp;type=&quot;button&quot;&nbsp;value=&quot;send&quot;&nbsp;id=&quot;button&quot;&nbsp;onclick=&quot;Cl();&quot;&gt; ////&lt;script&nbsp;type=&quot;text/javascript&quot;&gt; ////&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(&#39;button&#39;).onclick&nbsp;=&nbsp;function&nbsp;()&nbsp;{ ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;debugger; ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert(&#39;测试1&#39;); ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;window.extend.Close(&#39;测试&#39;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.parent.postMessage(&#39;this&nbsp;is&nbsp;test!index1&#39;,&nbsp;&#39;*&#39;); ////&nbsp;&nbsp;&nbsp;&nbsp;}; ////&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;Cl()&nbsp;{ ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;debugger; ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert(&#39;测试&#39;); ////&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parent.postMessage(&#39;this&nbsp;is&nbsp;test!index&#39;,&nbsp;&#39;*&#39;); ////&nbsp;&nbsp;&nbsp;&nbsp;} ////&lt;/script&gt;&lt;/body&gt;&lt;/html&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&lt;html&gt;&lt;head&gt;&lt;meta&nbsp;http-equiv=&quot;x-ua-compatible&quot;&nbsp;content=&quot;IE=10,chrome=1&quot;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&lt;/head&gt;&lt;body&nbsp;&nbsp;style=&quot;margin:0;padding:0;overflow:hidden&quot;&nbsp;scroll=&quot;no&quot;&gt;&lt;iframe&nbsp;width=&quot;100%&quot;&nbsp;height=&quot;100%&quot;&nbsp;marginwidth=&quot;0&quot;&nbsp;marginheight=&quot;0&quot;&nbsp;border=&quot;0&quot;&nbsp;src=&quot;http://zhenggc.cc/indext.html&quot;&gt;&lt;/iframe&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&lt;script&nbsp;type=&quot;text/javascript&quot;&gt;&nbsp;var&nbsp;mess=&#39;&#39;;&nbsp;&nbsp;function&nbsp;receiveMessage(e)&nbsp;{&nbsp;&nbsp;alert(&#39;csharp&nbsp;_html:&#39;&nbsp;+e.data);mess=e.data;&nbsp;&nbsp;csh.CloseMe(e.data);}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.addEventListener(&quot;message&quot;,&nbsp;receiveMessage,&nbsp;false);function&nbsp;go(){&nbsp;&nbsp;window.external.Close();&nbsp;}&nbsp;&lt;/script&gt;&nbsp;&lt;/body&gt;&lt;/html&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Cef.Initialize(settings); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;settings.l &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;CefSharpSettings.LegacyJavascriptBindingEnabled&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;html&nbsp;=&nbsp;&quot;&lt;html&gt;&lt;head&gt;&lt;meta&nbsp;http-equiv=\&quot;x-ua-compatible\&quot;&nbsp;content=\&quot;IE=10,chrome=1\&quot;&gt;&lt;/head&gt;&lt;body&nbsp;style=\&quot;margin:0;padding:0;overflow:hidden\&quot;&nbsp;scroll=\&quot;no\&quot;&gt;&lt;iframe&nbsp;&nbsp;width=\&quot;100%\&quot;&nbsp;height=\&quot;100%\&quot;&nbsp;marginwidth=\&quot;0\&quot;&nbsp;marginheight=\&quot;0\&quot;&nbsp;border=\&quot;0\&quot;&nbsp;src=\&quot;&quot;&nbsp;+&nbsp;url&nbsp;+&nbsp;&quot;\&quot;&gt;&lt;/iframe&gt;&quot;&nbsp;+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;&lt;script&nbsp;&nbsp;type=\&quot;text/javascript\&quot;&gt;&nbsp;var&nbsp;mess=&#39;&#39;;&nbsp;&nbsp;function&nbsp;receiveMessage(e)&nbsp;{&nbsp;&nbsp;alert(&#39;csharp_html:&#39;&nbsp;+e.data);mess=e.data;&nbsp;&nbsp;csh.CloseMe(e.data);}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.addEventListener(\&quot;message\&quot;,&nbsp;receiveMessage,&nbsp;false);&nbsp;&lt;/script&gt;&nbsp;&nbsp;&lt;/body&gt;&lt;/html&gt;&quot;; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wb.LoadHtml(html,&nbsp;&quot;http://zhenggc.cn/indext.html&quot;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;wb.JsDialogHandler&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wb.RegisterJsObject(&quot;csh&quot;,&nbsp;this,&nbsp;false); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp;wb.DownloadHandler&nbsp;=&nbsp;new&nbsp;CefSharpDownloadHandler(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.Controls.Add(wb); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;CloseMe(string&nbsp;mess) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox.Show(&quot;cSHarp&quot;&nbsp;+&nbsp;mess); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(mess.Equals(&quot;kclose&quot;)) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.Close(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} }</pre><p><br/></p>
2019/9/18 22:19:18(zgc) 抢沙发(0) 个人作品
阅读全文

vs2010sp1在线安装

<p>vs2010sp1在线安装 下载</p>
2019/9/17 22:52:05(zgc) 抢沙发(0) 个人作品
阅读全文

log4net代码配置

<pre class="brush:xml;toolbar:false">webconfig&nbsp;里的配置! &nbsp;&nbsp;&lt;log4net&gt; &nbsp;&nbsp;&nbsp;&nbsp;&lt;logger&nbsp;name=&quot;myLogger&quot;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;level&nbsp;value=&quot;All&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;appender-ref&nbsp;ref=&quot;AdoNetAppender_SqlServer&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&lt;/logger&gt; &nbsp;&nbsp;&nbsp;&nbsp;&lt;appender&nbsp;name=&quot;AdoNetAppender_SqlServer&quot;&nbsp;type=&quot;log4net.Appender.AdoNetAppender&quot;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;BufferSize&nbsp;涓虹紦鍐插尯澶у皬锛屽彧鏈夋棩蹇楄褰曡秴5&nbsp;鏉℃墠浼氫竴鍧楀啓鍏ュ埌鏁版嵁搴?--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;鎴栧啓涓?param&nbsp;name=&quot;BufferSize&quot;&nbsp;value=&quot;10&quot;&nbsp;/&gt;&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;bufferSize&nbsp;value=&quot;50&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;寮曠敤&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--2.0杩欐槸瀵瑰簲sql2008&nbsp;濡傛槸2000鎴?005鍙﹀閰嶇疆--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;connectionType&nbsp;value=&quot;System.Data.SqlClient.SqlConnection,&nbsp;System.Data,&nbsp;Version=2.0.0.0,&nbsp;Culture=neutral,PublicKeyToken=b77a5c561934e089&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;杩炴帴鏁版嵁搴撳瓧绗︿覆&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;connectionString&nbsp;value=&quot;Data&nbsp;Source=.\SQLEXPRESS;Initial&nbsp;Catalog=CaseManage;User&nbsp;ID=sa;Password=1234&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;鎻掑叆鍒拌〃Log&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;commandText&nbsp;value=&quot;INSERT&nbsp;INTO&nbsp;X_Log&nbsp;([TIMESTAMP],[EVENTCATEGORY],[COMPUTERNAME],[MAC_ADDRESS],[USERNAME],[SOURCE],[DESCRIPTION],[COLLECTDATE])&nbsp;VALUES&nbsp;(@log_date,&nbsp;@EventCategory,&nbsp;@ComputerName,@Mac_Address,@UserName,@Source,@Description,@CollectDate)&nbsp;&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;鏃ュ織绫诲瀷锛岃繖閲屽潎涓?&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;鏃ュ織璁板綍鏃堕棿锛孯awTimeStampLayout&nbsp;涓洪粯璁ょ殑鏃堕棿杈撳嚭鏍煎紡&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;parameter&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;parameterName&nbsp;value=&quot;@log_date&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;dbType&nbsp;value=&quot;DateTime&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;layout&nbsp;type=&quot;log4net.Layout.RawTimeStampLayout&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;/杩欓噷鍛㈡槸鑾峰彇log4net&nbsp;涓彁渚涚殑鏃ュ織鏃堕棿&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/parameter&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!--&nbsp;鏃ュ織鍒嗙被鎻忚堪&nbsp;--&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;parameter&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;parameterName&nbsp;value=&quot;@EventCategory&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;size&nbsp;value=&quot;50&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,AppBox&quot;&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;conversionPattern&nbsp;value=&quot;%property{EventCategory}&quot;&nbsp;/&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/layout&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/parameter&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Source &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@Source&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt;&lt;size&nbsp;value=&quot;5000&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,AppBox&quot;&gt;&lt;conversionPattern&nbsp;value=&quot;%property{Source}&quot;&nbsp;/&gt;&lt;/layout&gt;&lt;/parameter&gt;&lt;!--&nbsp;璁$畻鏈篒P&nbsp;--&gt;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@ComputerName&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt;&lt;size&nbsp;value=&quot;50&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,AppBox&quot;&gt;&lt;conversionPattern&nbsp;value=&quot;%property{ComputerName}&quot;&nbsp;/&gt;&lt;/layout&gt;&lt;/parameter&gt;&lt;!--&nbsp;璁$畻鏈篗ac&nbsp;淇℃伅&nbsp;--&gt;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@Mac_Address&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt;&lt;size&nbsp;value=&quot;50&nbsp;&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,&nbsp;AppBox&quot;&gt;&lt;conversionPattern&nbsp;value=&quot;%property{Mac_Address}&quot;&nbsp;/&gt;&lt;/layout&gt;&lt;/parameter&gt;&lt;!--&nbsp;鐧婚檰绯荤粺鐢ㄦ埛鍚?--&gt;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@UserName&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt;&lt;size&nbsp;value=&quot;50&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,AppBox&quot;&gt;&lt;conversionPattern&nbsp;value=&quot;%property{UserName}&quot;&nbsp;/&gt;&lt;/layout&gt;&lt;/parameter&gt;&lt;!--&nbsp;浜嬩欢鎻忚堪&nbsp;--&gt;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@Description&nbsp;&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;String&quot;&nbsp;/&gt;&lt;size&nbsp;value=&quot;4000&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;AppBox.MyLayout,&nbsp;AppBox&quot;&gt;&lt;conversionPattern&nbsp;value=&quot;%property{Description}&quot;&nbsp;/&gt;&lt;/layout&gt;&lt;/parameter&gt;&lt;parameter&gt;&lt;parameterName&nbsp;value=&quot;@CollectDate&quot;&nbsp;/&gt;&lt;dbType&nbsp;value=&quot;DateTime&quot;&nbsp;/&gt;&lt;layout&nbsp;type=&quot;log4net.Layout.RawTimeStampLayout&quot;&nbsp;/&gt;&lt;/parameter&gt;&lt;/appender&gt; &nbsp;&nbsp;&lt;/log4net&gt;</pre><p>loghelper.cs文件<br/></p><pre class="brush:c#;toolbar:false">&nbsp;public&nbsp;class&nbsp;LogHelper &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;LogHelper() &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetConfig(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;readonly&nbsp;log4net.ILog&nbsp;loginfo&nbsp;=&nbsp;log4net.LogManager.GetLogger(&quot;myLogger&quot;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;bool&nbsp;IsLoadConfig&nbsp;=&nbsp;false; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;void&nbsp;SetConfig() &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log4net.Config.DOMConfigurator.Configure(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;记录日志 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;info&quot;&gt;提示信息&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;WriteLog(string&nbsp;info) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!IsLoadConfig) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetConfig(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IsLoadConfig&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(loginfo.IsInfoEnabled) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loginfo.Info(info); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;记录日志 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;info&quot;&gt;提示信息&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;WriteLog(object&nbsp;info) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!IsLoadConfig) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetConfig(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IsLoadConfig&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(loginfo.IsInfoEnabled) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loginfo.Info(info); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;写日志 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;LogType&quot;&gt;日志类型&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;Message&quot;&gt;&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;&nbsp;void&nbsp;WriteLog(string&nbsp;LogType,string&nbsp;Message,string&nbsp;IP,string&nbsp;UserName,string&nbsp;RequestUrl&nbsp;) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogContent&nbsp;logmodel&nbsp;=&nbsp;new&nbsp;LogContent(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageBase&nbsp;Base=new&nbsp;PageBase(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.EventCategory&nbsp;=&nbsp;LogType; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.ComputerName&nbsp;=&nbsp;IP; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.Source&nbsp;=&nbsp;RequestUrl; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.Mac_Address&nbsp;=&nbsp;Base.GetMacAddress(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.UserName&nbsp;=&nbsp;UserName; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;logmodel.Description&nbsp;=&nbsp;Message; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogHelper.WriteLog(logmodel); &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;记录异常 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;info&quot;&gt;错误&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;param&nbsp;name=&quot;ex&quot;&gt;Exception&lt;/param&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;WriteLog(string&nbsp;info,&nbsp;Exception&nbsp;ex) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!IsLoadConfig) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SetConfig(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IsLoadConfig&nbsp;=&nbsp;true; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(loginfo.IsErrorEnabled) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loginfo.Error(info,&nbsp;ex); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}</pre><p>logcontent.cs文件<br/></p><pre class="brush:c#;toolbar:false">&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;包含了所有的自定字段属性 &nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;partial&nbsp;class&nbsp;LogContent &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;日志分类描述,自定义 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;EventCategory&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;日志分类描述,自定义 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;Source&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;计算机IP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;ComputerName&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;计算机Mac&nbsp;地址 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;Mac_Address&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;系统登陆用户 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;UserName&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;日志描述信息 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;///&nbsp;&lt;/summary&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;Description&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}</pre><p>摘自某系统!</p>
2019/9/1 22:53:31(zgc) 抢沙发(0) Net技术
阅读全文
系统公告

<p>近日服务器切换,将暂时造成.com域名无法访问,.cc域名能够正常访问!预计能正常访问时间在中秋节期间。</p>

搜索
站点数据
栏目总数: 7 个
页面数量: 49 篇
评论数量: 140 条
标签数量: 5 个
合作伙伴: 10 位
附件数量: 53 个
执行时间 0.1661 秒(s), 11 个查询