- 博客(95)
- 资源 (14)
- 收藏
- 关注
原创 实现js节流函数throttle
两个timer实现js节流函数用两个timer做一个函数调用节流器,不需要更多的逻辑,保证第一次调用和每间隔timeout时间后被触发和最后一次的调用被触发;// js 节流函数实现function throttle(func, timeout) { let headTimer = null; let tailTimer = null; let context = null; let args = null; return function () {
2021-03-30 11:09:20
424
原创 解决UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position...
解决UnicodeEncodeError: 'ascii' codec can't encode characters in position...在容器中使用 python3,如果没有做合适的配置,使用 print(“中文内容”)会出现编码问题,比如在控制台输出汉字会报错或输出了“乱码”,一般来说是因为 python3输出环境没有配置好 utf-8编码的原因,解决据说有多个,其中一个解决方法是在python 用代码就可以实现,也很容易,就是添加这样的代码:sys.stdout = codecs.get
2021-02-04 11:56:21
16288
2
原创 Xamarin中wcf的引用
Xamarin.Forms添加WCF引用Visual Studio For Mac在创建跨平台项目时,选xamarin.forms类型的空项目类型,共享项目选可移植类型库,会生成三个项目,一个可移植共享库,一个Drod项目和一个iOS项目。目前虽然有在共享库上添加Web引用的功能,但实际上生成的是空的文件,并不实用。解决方法是使用Windows版本的Visual Studio 2017的添加服务功能
2017-05-24 16:01:33
1948
原创 MacOS的快捷键
设置路径:系统偏好设置-->键盘-->修饰键修改对应关系如下:Control-->CommandCommand-Control这样设置后,可以像Windows一样来使用Control加上C、V等做复制粘贴的功能了。
2016-11-02 09:30:16
716
原创 VisualStudio App.Config自动配置
在VisualStudio中,可以跟据选定的运行模式自动生成相应的配置文件;对web类型的项目,系统已自动有了Web.config、Web.Debug.config、Web.release.config三个配置,且可自动使用转换工具自动来实现转换。对于像应用程序之类的项目,没有能自动实现这些,这对于项目的发布有的时候是个问题。对于这种情况,可以如下配置项目文件以实现相同功能:1:卸载要
2016-07-28 16:58:19
6272
原创 oracle解锁表语句
记录oracle中被锁表的解锁语句先查询锁的情况:select object_name as 名称, s.sid, s.serial#, p.spid as 进程号,s.machine from v$locked_object l , dba_objects o , v$session s , v$process p where l.object_id=o.object_id
2015-03-02 17:28:56
1099
原创 windows10的一点体会
在MacOS上虚拟机中的Window10表现的还可以。起码我发现的新功能很好用(主要对虚拟机环境来说):1:在Win7中usb3.0不好使,但在windows10中非常好用,已不需要再使用转换头来把3.0转成2.0了。2:在Win7中ISO文件不能直接查看内容,但在Windows10中可以直接双击就可以在文件夹中直接查看内容了。比如安装VS2015预览版本再也不需要使用虚拟光驱或使用虚拟机
2015-02-04 15:29:09
1580
原创 Xmpp客户端加入群时JID的指定
Xmpp在客户端连接服务端已创建的群JID示例:(其中的conference必不可少)roomname@conference.domainname
2015-01-15 16:47:40
837
原创 Intellij Idea的Drop frame功能
因为使用VisualStudio比较顺手,所以在学习Idea的时候有些习惯常常向vs去靠。因为需要调试代码,有的时候需要再把刚才执行过的代码再重新执行一下(遍)。在vs中可以很容易的用鼠标拖到相应的行就可以了。可这个功能在Idea中怎样实现?很失望,Idea中没有实现这个功能。但是,在Idea中有一个变通的实现方式,就是放弃当前的函数堆栈,让你重新来过整个函数的调用。好吧,我认了,总比
2014-12-26 09:18:46
6866
2
原创 idea 调试时编辑器滚动的设置
File-》Settings-》Editor-》General-》Scrolling-》Prefer moving caret line to minimize editor scrolling(选中)光标只有在达到编辑器最上最下边时才滚动。默认是光标在编辑器中保持中间位置,这样不方便之处是调试代码时编号器一直在跳着滚动不易看情代码的走向。改后代码保持不动,只有光标向下走,这样可以清楚调度
2014-12-17 11:22:59
3013
原创 Graphics平移原点及向上向右方向为正方式变换
Image img = Image.FromFile(path); using (var g = Graphics.FromImage(img)) { g.Transform = new System.Drawing.Drawing2D.Matrix(1, 0, 0, -1, 0, 0);
2014-11-19 12:38:59
2864
原创 mvc中将视图输出成字符串
private string renderViewToString(ControllerBase controller, WrapResult viewModel) { controller.ViewData.Model = viewModel; using (var sw = new System.IO.StringWriter()
2014-11-19 12:30:26
3444
原创 redis.pcall返回错误的处理
set abc 123zadd z 0 abceval "local c=redis.pcall('get', KEYS[1]) if (c.err) then return c.err else return c end" 1 abceval "local c=redis.pcall('get', KEYS[1]) if (c.err) then return c.err els
2014-11-10 10:27:23
2070
原创 vmware fusion安装Win10启动虚拟机“无法安装Hyper-V, 某个虚拟机监控程序正在运行”
“无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
2014-10-23 13:13:15
10554
原创 C#转换运算符
C# 允许程序员在类或结构上声明转换,以便类或结构与其他类或结构或者基本类型进行相互转换。 转换的定义方法类似于运算符,并根据它们所转换到的类型命名。 要转换的参数类型或转换结果的类型必须是(不能两者同时都是)包含类型。class SampleClass{ public static explicit operator SampleClass(int i)
2014-04-30 12:48:04
1895
原创 读取oracle的dbms_putline输出信息
很有用的一段代码,学习了。在没有地方查看dbms_output的时候,可以用get_line方法获取。--创建临时表create table test (fline varchar2(256));/--测试put_line与get_linedeclare line varchar2(256); status integer;begin dbms_outpu
2014-02-27 17:54:27
5475
转载 Access的Oledb类型对照表
http://support.microsoft.com/kb/320435最常见的数据类型映射的列表下表列出了最常见的数据类型,用于在 Microsoft Access 和这些数据类型与 Microsoft.NET Framework 数据类型以及OleDbType枚举的相关。访问权限类型名称数据库数据类型OLE DB 类型.NET Framework
2013-10-18 08:54:15
3907
原创 VMware Fusion5激活Win7
显然这个内容有点老,但是正好现在用到就记一下。以我的MacBook默认安装为例1,在安装完的VMware系统中,打开Finder,定位到 文稿-虚拟机-Windows 7 x64(虚拟机名称文件)右键显示包内容。2,在显示的包中找到. vmx文件,右键-打开方式-文本编辑,在打开的文件里可以在最后添加一行下面的文本 bios440.filename = "VM7
2013-07-23 09:43:24
2954
原创 .net中实现联合体类型
VC.Net语法: /*表达式元素*/ [System::Runtime::InteropServices::StructLayout( System::Runtime::InteropServices::LayoutKind::Explicit)] ref struct EI { public: [System::Runtime::InteropServices::Fie
2013-05-22 15:40:03
1093
原创 CSV文件解释代码
CSV文档规则1:数据使用逗号分隔;2:内容中可以包括用于分隔数据的逗号,此类数据使用双引号括起;3:数据中如果包括双引号,需要使用两个双引号;代码中没有使用Remove和Substring等函数对源串进行处理,而是使用了索引来定位字符串值。下面的代码将CSV文件解释出的数据存放到DataTable中以便使用。附计算的活动图。 ///
2013-05-16 15:29:18
1535
转载 阮一峰:字符串匹配的Boyer-Moore算法
阮一峰:字符串匹配的Boyer-Moore算法 上一篇文章,我介绍了 KMP 算法。但是,它并不是效率最高的算法,实际采用并不多。各种文本编辑器的"查找"功能(Ctrl+F),大多采用 Boyer-Moore 算法。 Boyer-Moore 算法不仅效率高,而且构思巧妙,容易理解。1977 年,德克萨斯大学的 Robert S. Boyer 教授和 J Strother
2013-05-04 12:27:46
1175
转载 C++ error C2027:使用了未定义类型 类的调用顺序
如果不想犯下面错误最好的做法是,先把每一个类都定义好后,再写函数实现部分(本例中将void A::funcA(B* inB)就放到了最后实现),写在前面的类,需要使用后面的类的时候只需要声明一下(像本例中的class B;放在A类前一样),但使用的时候只能是以指针的形式出现! 注:其实把访问放到实现文件(CPP)中会自然避免这个问题,写到头文件中便不能访问成员且实现的代码也比较多,也不好实现成
2013-02-17 13:52:57
23220
原创 Excel中$FilterDatabase的显示及编辑方法
使用Excel的时候明明就一个Sheet1,可是编程使用Microsoft.ACE.OLEDB.12.0确能得到两个表结果: Sheet1$Sheet1$FilterDatabase 打开Excel文件查找“名称管理器”(公式-名称管理器)并不能找到这个FilterDataBase名称,其实这个是隐藏了,可以通过宏来显示: 打开那个VB宏编辑器(Atl+F11或通
2013-01-17 09:35:05
18114
3
原创 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序
如果确认安装了Office的正确版本,那么需要检查下是不是调用程序和安装的Office是不是同样是x64或同样是x86, 如果两者不一致,请修改其中一个,当然最好是修改调用程序的配置,当然,如果是Anycpu可能需要确认Office和你的机器位数一致,或修改明确的选择(X64、X86)。
2013-01-17 09:12:27
2015
原创 VC.Net、C#.Net语法上很难想到的几点不同处
1:调用基类构造函数:C#public subclassname(object arg): base(arg){}C++h文件public: subclassname(System::Object^ type);cpp文件subclassname(System::Object^ type): baseclassname(type){}2:重写基类方法:C#
2012-12-12 11:13:33
1753
原创 VC++.Net的代码折叠
C#中有一个有用的功能,就是指定代码折叠,使用#Region就可以了。但是在VC++.Net里不能直接使用这个命令。经过查找MSDN得知应该如下使用:#pragma region name#pragma endregion comment示例:// pragma_directives_region.cpp#pragma region Region_1void Test()
2012-11-26 09:39:48
1691
原创 win7下的TreeView
在win7下TreeView可能会出现一个问题:当节点多的时候,最后一行的节点可能会被滚动条给忽略掉。除非把树控件拉大,否则就很难操作到它。其实有一个很简单的解决方法。就是在加载节点的时候,使用BeginUpdate和对应的EndUpdate。如下所示:try{ this.treeView.BeginUpdate(); //loadTreeNodes...}
2012-11-05 11:57:06
1510
原创 .net自定义程序集版本号
默认版本号如下:[assembly: AssemblyVersion("1.0.0.0")][assembly: AssemblyFileVersion("1.0.0.0")] 如果需要指定版本号可以改写上面的数字。但是也可以自动的让VS自已来处理,比如:[assembly: AssemblyVersion("1.0.*")]//[assembly: AssemblyFil
2012-11-01 14:31:55
1898
原创 修改VS2010的VC.net项目 framework对应版本
在C++/CLI中修改VC++的framework版本,由于VS2010不支持像C#项目文件的那种直接的下拉框模式,我们需要在.vcxproj文件中修改目标版本(TargetFrameWorkVersion)。VS2010中并没有默认的把这个节点添加到项目中,需要手动的添加这个xml节点:1:使用文本编辑器打开.vcxproj文件,找到并修改如下内容: v2.0
2012-10-23 09:11:48
19727
1
转载 VC.Net的托管与非托管混合编程
http://hi.baidu.com/guo_1017/item/67b9ea33a4db5025b2c0c514VC.Net的托管与非托管混合编程文章来源:卓锐精品之博 http://blog.elitehome.cn作者:华珑这几天一直研究VC.Net的托管与非托管混合编程.Net作为一个非常优秀的开发平台,能让开发人员快速开发界面与应用,但.Net托管代码是可以
2012-10-22 16:14:46
4097
原创 一句话经典
开心一刻:我只会C++不懂.NET不懂C#,怎么编写.NET程序? 很简单,你照样用你的C++写你的程序,然后测试没有错误后,将编译选项改为/clr,好了,Rebuild,你的程序现在是.NET了。http://www.cppblog.com/mzty/archive/2008/03/12/44280.html C++.net,确实强大!
2012-10-22 15:02:57
666
原创 重复的列名添加到DataTable算法
DataTable的Columns不能添加重复的列,但是Sql语句中确实可以有重复的列名,如下代码自动命名得复的列名并添加到DataTable: int index = 1; string colName = ColumnName; while (m_DataTable.Columns.Contains(colName)) { colName = args.Colum
2012-09-26 15:22:20
4597
原创 自定义C#值类型的的集合
请注意,在创建集合(例如,浮点数组列表)时,添加到集合中的每一项都将进行装箱。您应该考虑使用数组或为值类型创建自定义集合类。--MSDN
2012-09-24 18:40:57
1253
原创 异常处理的性能问题
MSDN:异常处理通常,错误条件都将作为常规流程控制使用。在此情况下,如果试图通过编程将用户添加到 Active Directory 实例中,则只能试着添加该用户,如果系统返回 E_ADS_OBJECT_EXISTS HRESULT,则说明它们已经存在于该目录中。此外,您也可以通过搜索目录查找该用户,如果搜索失败则只需添加该用户。按照常规流程控制使用错误,在 CLR 环境中会降低性能。
2012-09-24 18:25:04
1362
原创 __debugbreak()
VC写的DLL类库,在其运行时可能需要附加到进行的进程调试,__debugbreak()方法可以让我们对程序添加断点进行调试,为了方便附加进程,我们一般需要这样设置下更好使用:控制面板\系统和安全\操作中心\问题报告设置(选上)每次发生问题时,在检查解决方案之前先询问我(&M) 这样当遇到这个断点时系统会很快的让我们选择是否调试。选中调试就可以容易的附加到进程。
2012-09-14 13:56:21
14276
原创 error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
使用VS2010编译VC++项目的时候可能会出这个问题。据说升级到SP1后可能问题解决,但是下载量太大,目前没有得到证实。网上大多的方法都是说在“清单工具”中将嵌入清单改成“否”,但是这个不一定100%解决问题。我总结了下这个问题的解决方法:1:如果项目是一个动态库,或者说,项目中没有实质的资源文件的时候,将嵌入清单改成“否”是可以解决的。2:如果项目已有了资源文件,将嵌入清单
2012-09-14 09:58:39
1863
原创 .net的一个Bug:Int64与Byte[8]互转的问题
有一个64位整数值: Int64 n = 634636512000000000;有两种方法可以转为字节流1: byte[] buffer = new byte[8]; buffer[0] = (byte)n; buffer[1] = (byte)(n >> 8); buffer[2] = (byte)(n >> 0x10); buffer
2012-09-13 17:42:25
4309
自己开发的Ollydbg复制字符串小插件
2013-12-13
ExcelWorkBook
2011-02-26
自绘窗体风格,完全可以让你由此做出漂亮的窗口界面
2009-02-13
PrintPreviewBigImage
2008-01-23
新版Grid控件
2007-01-30
GridApp.rar
2006-08-23
数据表格
2006-08-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人