- 博客(236)
- 资源 (9)
- 收藏
- 关注
转载 托管调试助手 "PInvokeStackImbalance":的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管
在C#中一定要检查引用时的数据类型 WinAPI 的数据类型 默认是32位的,但是引用时外部的是 Long类型默认是64位的。所以引用时需要将 long 改为 int 型。参照 http://blog.sina.com.cn/s/blog_8248282d0101hcbd.html情况一:对 PInvoke 函数“TestDLL!TestDLL.Form1::mySum”的调用导致堆栈不对称...
2019-01-21 16:13:58
6411
原创 C# iTextSharp 创建PDF水印
刚刚有人留言说需要 iTextSharp 创建PDF水印代码那就贴一个以前写好的。 public static void SetWatermark(string inputfilepath, string outputfilepath, string waterMarkName) { PdfReader pdfReader = null; PdfSt...
2019-01-04 13:29:23
1376
转载 C#调用C++的DLL搜集整理的所有数据类型转换方式
原文:https://www.cnblogs.com/zeroone/articles/2342373.html//C++中的DLL函数原型为//extern “C” __declspec(dllexport) bool 方法名一(const char* 变量名1, unsigned char* 变量名2)//extern “C” __declspec(dllexport) bool 方法名...
2018-11-29 18:00:18
298
转载 go 语言框架 gin 的中文文档
安装与配置安装:$ go get gopkg.in/gin-gonic/gin.v1注意:确保 GOPATH GOROOT 已经配置导入:import “gopkg.in/gin-gonic/gin.v1”框架架构HTTP 服务器1.默认服务器router.Run()2.HTTP 服务器除了默认服务器中 router.Run() 的方式外,还可以用 http.ListenAn...
2018-10-15 09:19:26
1063
原创 设置chrome启动指定页面全屏
设置快捷的 目标C:\Users\XXX\AppData\Local\Google\Chrome\Application\chrome.exe – kiosk www.baidu.com 并且将快捷拖入启动文件夹里面 重启电脑就可以验证 浏览器自启动全屏到指定页面...
2018-08-30 17:19:56
3352
原创 qt反锯齿操作
QPainter::Antialiasing 告诉绘图引擎应该在可能的情况下进行边的反锯齿绘制 QPainter::TextAntialiasing 尽可能的情况下文字的反锯齿绘制 QPainter::SmoothPixmapTransform 使用平滑的pixmap变换算法(双线性插值算法),而不是近邻插值算法painter.setRenderHint(Q...
2018-07-03 09:41:14
4556
转载 值得学习的C语言开源项目
值得学习的C语言开源项目WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:http://home.tiscali.cz/~cz2105...
2018-05-24 09:40:50
483
转载 C# webBrowser打开网页出现脚本错误解决
当IE浏览器遇到脚本错误时,在浏览器左下角会出现一个黄色图标,点击可以查看脚本错误的详细信息,并不会有弹出的错误信息框。我们在用webBrowser编写的程序打开网页,遇到脚本有问题是,会弹出一个错误提示框,需要确认后才能够进行执行。如果我们设计的程序是用来自动处理网页的,那么在出现这种情况时,程序运行被打断,需要人工干预。这显然无法达到我们的要求。 那么,在使用webBrowser...
2018-04-02 09:49:01
15474
2
转载 html和winform交互
1:在前台使用webBrowser控件 2:后台给webBrowser控件初始化 this.webBrowser.Url = new Uri(AppDomain.CurrentDomain.BaseDirectory + Path, UriKind.Absolute); 3:在webBrowser_DocumentCompleted事件中添加初始化值方法(注意,不要再页面加载中,因为页面加
2018-02-05 10:38:49
1431
转载 System.Diagnostics.Process.Start的妙用
我们经常会遇到在Winform或是WPF中点击链接或按钮打开某个指定的网址, 或者是需要打开电脑中某个指定的硬盘分区及文件夹, 甚至是"控制面板"相关的东西, 那么如何做呢? 答案是使用System.Diagnostics.Process.Start()。它的作用是调用外部的命令。 先来看看它的调用方法: Process.Start () Process.Start (Pro
2018-01-08 11:41:33
435
转载 C#中的Invoke
在用.NET Framework框架的WinForm构建GUI程序界面时,如果要在控件的事件响应函数中改变控件的状态,例如:某个按钮上的文本原先叫“打开”,单击之后按钮上的文本显示“关闭”,初学者往往会想当然地这么写:void ButtonOnClick(object sender,EventArgs e){ button.Text="关闭";}这样的
2017-12-24 21:16:01
548
转载 正则表达式从入门到实战
本文来自作者 JPM 在 GitChat 上分享「正则表达式从入门到实战」,「阅读原文」查看交流实录在开发的过程中,字符串处理往往很频繁。比如我们经常会对用户输入做校验:手机号,身份证号,邮箱,密码,域名,IP 地址,URL 或者其他与字符串相关校验的业务场景。正则表达式就是一种强大而灵活的文本处理工具,正则可以很好的解决这类字符串校验问题。掌握正则表达式,就能大大提高
2017-11-16 10:00:31
313
转载 qt pro文件和pri文件的区别
本文只能抓住一条线,简单介绍一下 *.pro、*.pri、*.prf、*.prl等四种文件:干嘛用的,如何用的*.proqmake 的工程(project)文件,这个大家肯定都非常熟悉了。那我就不费话了,上例子:这是一个典型的Qt示例程序的.pro文件(propriprfprl.pro):TEMPLATE = appCONFIG += QTQT += core gu
2017-11-15 15:02:27
6048
转载 关于CefSharp的坎坷之路
项目背景:公司的XX产品需要升级和以后支持多平台的使用。因为之前项目是由WPF实现的。目前以后想作为Html5来展示页面。因为涉及到整体更改遇到的问题较多以及其他原因,所以只是内部内容区域先替换为Html5页面,所以需要嵌入Browser控件。Browser控件的选型:1.Winform中的WebBrowser2.WPF中的WebBrowser3.W
2017-11-15 13:45:09
2545
转载 C# 调用C++ DLL 的类型转换
//C#调用C++的DLL搜集整理的所有数据类型转换方式,可能会有重复或者多种方案,自己多测试 //c++:HANDLE(void *) ---- c#:System.IntPtr //c++:Byte(unsigned char) ---- c#:System.Byte //c++:SHORT(short) ---- c#:System.Int16 //c++
2017-10-18 13:47:41
278
转载 QRCode二维码字符长度问题
网上的二维码例子都比较好,不过就是没有比较详细讲解关于QRCode二维码生成的规则和要点。例如:为什么要在生成二维码的时候,判断字符集的长度要小于128。要知道二维码信息容量大:可容纳多达1850个大写字母或2710个数字或1108个字节,或500多个汉字,比普通条码信息容量约高几十倍。如果控制压缩内容在128个以内的话,那么二维码的优势哪里去了?经过多次测试发现,二维码所能包含的字符
2017-10-10 09:08:20
9248
1
原创 获取IE HTML文档
获取打开IE HTML文档SHDocVw.ShellWindows shellWindows= new SHDocVw.ShellWindowsClass();string filename;foreach (SHDocVw.InternetExplorer ie in shellWindows){filename= Path.GetFileNameWithoutExtensio
2017-09-13 09:35:14
360
原创 本地计算机上的XXX服务启动后又停止了——Windows Service服务调试
Service启动失败,后提示以下错误信息: 查了一下资料,应该是服务的逻辑代码出了问题,打开控制面板/管理工具/事件查看器 ->应用程序 里发现了如下信息:双击错误信息,即可找到服务的错误提示根据错误的提示信息,可检查代码。
2017-08-16 15:29:22
8675
原创 C# xsd验证xml格式
/// /// 通过xsd验证xml格式是否正确,正确返回空字符串,错误返回提示 /// /// xml文件 /// xsd文件 /// 命名空间,无则默认为null /// public string XmlValidationByXsd(string
2017-07-17 10:20:54
1890
转载 C++11 标准新特性:Defaulted 和 Deleted 函数
本文将介绍 C++11 标准的两个新特性:defaulted 和 deleted 函数。对于 defaulted 函数,编译器会为其自动生成默认的函数定义体,从而获得更高的代码执行效率,也可免除程序员手动定义该函数的工作量。对于 deleted 函数, 编译器会对其禁用,从而避免某些非法的函数调用或者类型转换,从而提高代码的安全性。本文将通过代码示例详细阐述 defaulted 和 delet
2017-06-19 16:48:26
286
原创 GetSafeHwnd 解释
当我们想得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND)时,最安全的方法是使用GetSafeHwnd()函数,通过下面的例子来看其理由:CWnd *pwnd = FindWindow(“ExploreWClass”,NULL); //希望找到资源管理器HWND hwnd = pwnd->m_hwnd; //得到它的HWND这样的代码当开始得到的pwnd为空的时候就会出现一个“Ge
2017-06-13 22:54:05
536
原创 C# 遍历Hashtable
static void Main(string[] args) { Hashtable ht=new Hashtable(); ht.Add("1", "A"); ht.Add("2", "B"); ht.Add("3", "C"); ht.Add("4", "D
2017-05-19 16:28:58
761
原创 C# iTextSharp 带书签合并多个PDF
private void MergePdfFilesWithBookMark(string[] sourcePdfs, string outputPdf) { PdfReader reader = null; Document document = new Document(); PdfImportedPage page = null;
2017-05-19 09:07:32
7414
4
原创 C# iTextSharp 简单合并PDF(不带书签)
public static void MergePdfFiles(string[] fileList, string outMergeFile) { PdfReader reader; List readerList = new List(); Document document = new Document(); PdfW
2017-05-19 09:05:51
4781
原创 C# ComboBox的赋值
ComboBox1.Items.Add(“ComboBox1”);//添加item ComboBox1.SelectedIndex = 0;//设置显示的item索引
2017-05-09 18:01:56
5013
1
原创 C# 读写配置文件
/// /// 读写配置文件(并创建) /// public class FileConfig { #region 操作INI文件的API函数 [DllImport("kernel32")] private static extern long WritePrivateProfileString(stri
2017-05-09 17:58:13
412
原创 C#winform 实现从服务器下载
/// /// 下载服务器文件至客户端 /// /// 要下载的Web服务器上的文件地址(全路径) /// 下载到的目录(存放位置,机地机器文件夹) /// True/False是否上传成功 public bool DownLoadFile(string strUrlFilePath, string
2017-05-09 17:54:40
4506
原创 C# 无窗口的DOS进程操作
/// /// 无窗口的DOS进程操作 /// public class DosProcess { private static string Run(IEnumerable commandlist) { using (var process = new Process()) {
2017-05-09 17:44:40
736
原创 C# 日志操作类
using System;using System.Globalization;using System.Text;using System.IO;using System.ComponentModel;using System.Windows.Forms;namespace EtheSoft.ExtOperations{ /// ///日志信息类型 ///
2017-05-09 17:40:55
539
原创 C# int和byte之间的互转
/// /// int转byte /// /// /// public static byte[] intToBytes(int value) { byte[] src = new byte[4]; src[3] = (byte)((value >
2017-05-09 16:41:07
9332
原创 C# 关于委托的例子
最近给新人讲委托,就找到曾经不知道在哪个大神处弄的实例 通俗易懂using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { // 这里声明委托 public delegate void Notify( int newValue )
2017-05-09 16:30:53
1321
原创 SQL 查询日期相关记录
SELECT * FROM 表 WHERE CONVERT(Nvarchar, dateandtime, 111) = CONVERT(Nvarchar, GETDATE(), 111) ORDER BY dateandtime DESC本月记录 SELECT * FROM 表 WHERE datediff(month,[dateadd],getdate())=0 本周记录
2017-05-09 15:17:28
373
原创 关于在winform使用iwebpdf遇到问题
iwebpdf是金格比较的一款比较好的中间件 可以阅读pdf 可以签章,iwebpdf 是COM控件的形式安装的,按常规使用COM控件的方式拖入控件会引起ide的闪退,尝试多种方法和咨询了官方才知道这玩意不支持.net4.0的环境 支持.net2.0。于是将项目降级到2.0。在使用这个控件就没问题了。
2017-05-09 14:52:07
5349
原创 C# BHO遍历iframe(2)
这个方法也不错可以遍历iframe//遍历IFrame public static bool FramesRecursion(ref IHTMLWindow2 frame) { IHTMLDocument2 frameDoc = frame.document; if (null == frameDoc) return false; if (null ==
2017-05-09 14:41:28
858
原创 C# BHO遍历iframe
因为有有项目需要BHO进行对ie浏览器中的网页解析 DOM分析会有很多转换 遇到iframe里面的数据采集不到。查了资料以下方法可行: IHTMLIFrameElement iframe = document.getElementById("abcFrame") as IHTMLIFrameElement; if (iframe !
2017-05-09 14:39:35
1006
原创 C# Invoke解读
在用.NET Framework框架的WinForm构建GUI程序界面时,如果要在控件的事件响应函数中改变控件的状态,例如:某个按钮上的文本原先叫“打开”,单击之后按钮上的文本显示“关闭”,初学者往往会想当然地这么写:void ButtonOnClick(object sender,EventArgs e){ button.Text="关闭";}这样的写法运行程序之后,可能会触发异
2017-05-05 09:12:59
564
原创 c# 获取计算机硬件标识
一、使用系统api获取using System;using System.Runtime.InteropServices;using System.Text;namespace TestDemo{ public class HardWareInfo { public static string GetHardWareString() {
2017-05-05 09:11:13
1740
原创 static_cast与dynamic_cast转换
3.1 static_cast用法:static_cast ( exdivssion ) 该运算符把exdivssion转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类和子类之间指针或引用的转换。 进行上行转换(把子类的指针或引用转换成基类表示)是安全的; 进行下行转换(把基类指针或引用转换成子类表示)时,由于
2017-05-05 09:05:00
450
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人