<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小沈的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/shenhch</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; shenhch]]></copyright><item><title><![CDATA[SHFileOperation拷贝文件夹遇到长路径失败问题测试]]></title><link>https://blog.csdn.net/shenhch/article/details/134441674</link><guid>https://blog.csdn.net/shenhch/article/details/134441674</guid><author>shenhch</author><pubDate>Thu, 16 Nov 2023 14:49:04 +0800</pubDate><description><![CDATA[当路径为绝对路径时，能适用长文件名，路径不能以"\0\0"结尾，好像只能有一个\0。以下是我试验的结果：我请问那两个加*号标注的一个成功，一个失败，有什么不同吗？当路径为相对路径时，不能操作长文件名，路径以"\0\0"结尾。//成功，但不能是长文件名。//成功，但不能是长文件名。//成功，可以是长文件名。]]></description><category></category></item><item><title><![CDATA[改变CTabCtrl控件字体颜色与背景 含实例vs2019]]></title><link>https://blog.csdn.net/shenhch/article/details/124554054</link><guid>https://blog.csdn.net/shenhch/article/details/124554054</guid><author>shenhch</author><pubDate>Tue, 03 May 2022 13:30:17 +0800</pubDate><description><![CDATA[CTabCtrl重绘]]></description><category></category></item><item><title><![CDATA[安装msi程序报错2503错误解决方案（Win10）]]></title><link>https://blog.csdn.net/shenhch/article/details/121031647</link><guid>https://blog.csdn.net/shenhch/article/details/121031647</guid><author>shenhch</author><pubDate>Fri, 29 Oct 2021 12:27:35 +0800</pubDate><description><![CDATA[一.命令提示符（管理员）启动
“win+x” 打开命令提示符（管理员）
输入命令“msiexec /package D:\scala-2.11.8.msi" 然后回车
注：D:\scala-2.11.8.ms 换成你的安装程序全路径即可
二.永久提权方法
“win+r” 然后输入“gredit.msc" 回车，进入如下画面
　　首先计算机配置，本地组策略编辑器——&gt;计算机配置——&gt;管理模板——Windows组件—— &gt;Windows Installer——&gt;始终以提升的权限进行安装.]]></description><category></category></item><item><title><![CDATA[平面上点到线段的最短距离 矢量法（计算几何）]]></title><link>https://blog.csdn.net/shenhch/article/details/115201500</link><guid>https://blog.csdn.net/shenhch/article/details/115201500</guid><author>shenhch</author><pubDate>Thu, 25 Mar 2021 11:32:44 +0800</pubDate><description><![CDATA[给出点A、B的坐标, 构成线段AB, 再给出一点P的坐标, 求点P到线段AB的最短距离







#include&lt;cmath&gt;
#include&lt;iostream&gt;
using namespace std;
typedef struct node
{
	double x, y;
}*PNODE,NODE;
double getDis2(NODE a, NODE b)  //得到两点距离的平方
{
	return (a.x - b.x)*(a.x - b.x) + (a.y -.]]></description><category></category></item><item><title><![CDATA[vs打包错误：要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”，必须将“Microsoft .NET Framework 4.7.2 (x86 和 x64)”项的文件]]></title><link>https://blog.csdn.net/shenhch/article/details/113848441</link><guid>https://blog.csdn.net/shenhch/article/details/113848441</guid><author>shenhch</author><pubDate>Thu, 18 Feb 2021 16:09:13 +0800</pubDate><description><![CDATA[错误内容：




ERROR: 要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”，必须将“Microsoft .NET Framework 4.7.2 (x86 和 x64)”项的文件“DotNetFX472\NDP472-KB4054530-x86-x64-AllOS-ENU.exe”下载到本地计算机。有关详细信息，请参见 http://go.microsoft.com/fwlink/?LinkId=616018。

ERROR: 要在“系统必备”对话框中启用“从与我的应用程.]]></description><category></category></item><item><title><![CDATA[excel合并同一目录下代码（多文件合并到同一个文件多Sheet下、多文件合并到同一个Sheet下）]]></title><link>https://blog.csdn.net/shenhch/article/details/103073165</link><guid>https://blog.csdn.net/shenhch/article/details/103073165</guid><author>shenhch</author><pubDate>Thu, 14 Nov 2019 19:10:04 +0800</pubDate><description><![CDATA[一、多文件合并到同一个文件多Sheet下：
1、在想要合并的excel文件目录中新建一个excel文件。
2、右键新建excel中的sheet1选择“查看代码”，或者Alt+F11直接调出VBA操作界面。
3、运行以下代码（蓝色加粗倾斜字体为代码）。
注意：
1、excel文件类型是xls和xlsx，需要对应修改代码里的后缀
2、合并前最好关闭其他excel文件，否则可能出现合并数据插入到其他ex...]]></description><category></category></item><item><title><![CDATA[c++调用Python详解，及实例]]></title><link>https://blog.csdn.net/shenhch/article/details/93492886</link><guid>https://blog.csdn.net/shenhch/article/details/93492886</guid><author>shenhch</author><pubDate>Mon, 24 Jun 2019 16:13:18 +0800</pubDate><description><![CDATA[1、首先介绍下Python安装，登录https://www.python.org/downloads/，下载自己需要的版本下载进行安装，我下载的是3.7.3。安装需要注意，需要使用Debug版本进行编译的，需要在安装时勾对应选项：


2、安装完毕之后进行vs配置

...]]></description><category></category></item><item><title><![CDATA[本地配置GitHub教程]]></title><link>https://blog.csdn.net/shenhch/article/details/93200243</link><guid>https://blog.csdn.net/shenhch/article/details/93200243</guid><author>shenhch</author><pubDate>Fri, 21 Jun 2019 16:01:14 +0800</pubDate><description><![CDATA[1、首先需要在GitHub官网注册账号，https://github.com/ 这是GitHub的官方网站，在官网上可以注册属于自己的GitHub账号，此处不做详细介绍，注册之后需要创建一个属于自己的库，点击右上角 + 号的小三角，点击New repository 。如下图：

2、
第一个框是自己为自己的库起一个名字，第二个框是说明信息，输入完毕点击创建。
3、接下来本地安装Git，可以去官网下...]]></description><category></category></item><item><title><![CDATA[Windows下Vs2015配置Qt5.11.2全解]]></title><link>https://blog.csdn.net/shenhch/article/details/93175031</link><guid>https://blog.csdn.net/shenhch/article/details/93175031</guid><author>shenhch</author><pubDate>Fri, 21 Jun 2019 11:18:05 +0800</pubDate><description><![CDATA[1、此教程在已安装vs2015基础之上，不介绍Vs2015安装方法。首先下载Qt。
下载地址：http://download.qt.io/archive/qt/

根据需要选择下载的版本，我选择的是5.11.2，下载完毕之后安装Qt。

...]]></description><category></category></item><item><title><![CDATA[C++ ListControl控件使用、编辑、增加一行]]></title><link>https://blog.csdn.net/shenhch/article/details/92852268</link><guid>https://blog.csdn.net/shenhch/article/details/92852268</guid><author>shenhch</author><pubDate>Wed, 19 Jun 2019 23:32:05 +0800</pubDate><description><![CDATA[1、listcontrol控件创建
2、实现双击编辑指定内容

]]></description><category></category></item><item><title><![CDATA[C++ 选择目录、文件操作基础、指定文件后缀的获取（CFileDialog、SHBrowseForFolder）]]></title><link>https://blog.csdn.net/shenhch/article/details/92830713</link><guid>https://blog.csdn.net/shenhch/article/details/92830713</guid><author>shenhch</author><pubDate>Wed, 19 Jun 2019 14:32:08 +0800</pubDate><description><![CDATA[1、选择目录SHBrowseForFolder使用方法介绍
bool SelectFilePath( TString&amp; strFilePath )
 {
     TCHAR szPathName[MAX_PATH] = {0};
     BROWSEINFO bInfo = {0};
     TString strDefaultPath = _T("E:\\"); // 注意路径中不...]]></description><category></category></item><item><title><![CDATA[基于OpenCV的聚类算法（K-means）图像色彩分割]]></title><link>https://blog.csdn.net/shenhch/article/details/92803564</link><guid>https://blog.csdn.net/shenhch/article/details/92803564</guid><author>shenhch</author><pubDate>Wed, 19 Jun 2019 09:27:35 +0800</pubDate><description><![CDATA[首先介绍下OpenCV的聚类算法函数
int cvKMeans2(const CvArr* samples, int nclusters,
　　　　　　　 CvArr* labels, CvTermCriteria termcrit,
　　　　　　　 int attempts=1, CvRNG* rng=0,int flags=0,
　　　　　　　 CvArr* centers=0,double*...]]></description><category></category></item><item><title><![CDATA[MFC树形控件CTreeCtrl使用方法、遍历、SetCheck无效、根据名称获取节点、获取选中节点等问题]]></title><link>https://blog.csdn.net/shenhch/article/details/78606033</link><guid>https://blog.csdn.net/shenhch/article/details/78606033</guid><author>shenhch</author><pubDate>Wed, 22 Nov 2017 17:23:41 +0800</pubDate><description><![CDATA[MFC树形控件CTreeCtrl使用方法:遍历所有节点、根据名称获取节点、获取选中节点等，解决了树形控件在对话框初始化时SetCheck无效问题]]></description><category></category></item><item><title><![CDATA[关于C++、C#实现EXCEL数据库批量导入数据库万行以上数据效率问题]]></title><link>https://blog.csdn.net/shenhch/article/details/70255082</link><guid>https://blog.csdn.net/shenhch/article/details/70255082</guid><author>shenhch</author><pubDate>Thu, 20 Apr 2017 09:48:13 +0800</pubDate><description><![CDATA[最近开发一个数据展示、处理的一个管理类网站，开始没有考虑数据量问题，测试才发现，当excel数据导入数据库的时候，随着数据量的增加，越来越慢。慢的难易理解。
      通过网上查找发现事务在数据库中是一个重要的概念，使用事务可以保证数据的统一和完整性。同时也可以提高效率。那么，如何启动，提交事务呢？以我当前用的SQLite3数据库为例：
       1、之前的数据库执行语句代码：（没有启用]]></description><category></category></item><item><title><![CDATA[sql语句删除表数据drop、truncate和delete的用法]]></title><link>https://blog.csdn.net/shenhch/article/details/70254885</link><guid>https://blog.csdn.net/shenhch/article/details/70254885</guid><author>shenhch</author><pubDate>Thu, 20 Apr 2017 09:32:37 +0800</pubDate><description><![CDATA[虽然西西不建议大家去用命令删除数据库表中的东西，但是这些删除命令总有用的着的地方。
说到删除表数据的关键字,大家记得最多的可能就是delete了
然而我们做数据库开发,读取数据库数据.对另外的两兄弟用得就比较少了
现在来介绍另外两个兄弟,都是删除表数据的,其实也是很容易理解的
老大------drop
出没场合:drop table  tb --tb表示数据表的名字,下同
绝招:删除内]]></description><category></category></item><item><title><![CDATA[OSG + VS2008 + win7环境搭建]]></title><link>https://blog.csdn.net/shenhch/article/details/52183423</link><guid>https://blog.csdn.net/shenhch/article/details/52183423</guid><author>shenhch</author><pubDate>Thu, 11 Aug 2016 15:52:29 +0800</pubDate><description><![CDATA[Win7下 osg+vs2010环境搭建

一．相关准备

a) Osg源码

当前最新版：OpenSceneGraph的3.0.0.zip

下载链接：

http://www.openscenegraph.org/downloads/stable_releases/OpenSceneGraph-3.0/source/OpenSceneGraph-3.0.0.zip

b) Osg第三方库

3...]]></description><category></category></item><item><title><![CDATA[VS2008 关于动态库详解]]></title><link>https://blog.csdn.net/shenhch/article/details/17080419</link><guid>https://blog.csdn.net/shenhch/article/details/17080419</guid><author>shenhch</author><pubDate>Mon, 02 Dec 2013 20:48:30 +0800</pubDate><description><![CDATA[一、创建新的动态链接库（DLL）项目


从“File”菜单中，选择“New”，然后选择“Project…”。
如下图：在“项目类型”窗格中，选择“Visual C++”下的“Win32”。在“模板”窗格中，选择“Win32 Console Application”。为项目选择一个名称，如 MathFuncsDll，并将其键入“Name：”字段。 为解决方案选择一个名称，如 Dynamic]]></description><category></category></item><item><title><![CDATA[vector 容器详细用法]]></title><link>https://blog.csdn.net/shenhch/article/details/17055509</link><guid>https://blog.csdn.net/shenhch/article/details/17055509</guid><author>shenhch</author><pubDate>Sun, 01 Dec 2013 14:31:11 +0800</pubDate><description><![CDATA[vector是C++标准模板库中的部分内容，它是一个多功能的，能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器，是因为它能够像容器一样存放各种类型的对象，简单地说，vector是一个能够存放任意类型的动态数组，能够增加和压缩数据。
　　为了可以使用vector，必须在你的头文件中包含下面的代码：
　　#include 
　　vector属于std命名域的，因此需]]></description><category></category></item><item><title><![CDATA[结构体在内存中的对齐规则]]></title><link>https://blog.csdn.net/shenhch/article/details/16947489</link><guid>https://blog.csdn.net/shenhch/article/details/16947489</guid><author>shenhch</author><pubDate>Mon, 25 Nov 2013 17:19:35 +0800</pubDate><description><![CDATA[一个结构体变量定义完之后，其在内存中的存储并不等于其所包含元素的宽度之和。
例一：
                                      #include 
                                      using namespace std;
                                         struct]]></description><category></category></item></channel></rss>