<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sql112113的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sql112113</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sql112113]]></copyright><item><title><![CDATA[PInvoke调用导致堆栈不对称 c#调用C++win32非托管dll的问题深度分析]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/79297079</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/79297079</guid><author>sql112113</author><pubDate>Fri, 09 Feb 2018 11:58:18 +0800</pubDate><description><![CDATA[问题描述：对 PInvoke 函数“xxFunction（）”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配问题解决：1、在c#中函数声明处改一个参数，[DllImport(&quot;xx.dll&quot;, EntryPoint=“xxFunction”, CallingConvention = Cal...]]></description><category></category></item><item><title><![CDATA[PFX 证书 转 jks 证书]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/71633301</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/71633301</guid><author>sql112113</author><pubDate>Thu, 11 May 2017 15:32:52 +0800</pubDate><description><![CDATA[一、打开Key tool



二、新建一个KeyStore，file->NewkeyStore，选择 jks 然后点击ok
三、选择导入一个key pair



四、选择 .pfx 文件，并输入 密码，这里是 pfx 的密码，正确后出现证书信息，选择导入，然后输入一个新密码，成功后会提示导入成功。







五、导出jks证书，选择file->save k]]></description><category></category></item><item><title><![CDATA[c++中如何写参数不定的函数]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/52514184</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/52514184</guid><author>sql112113</author><pubDate>Mon, 12 Sep 2016 15:48:34 +0800</pubDate><description><![CDATA[#include 
#include         //要包含这个头文件
void variable(int i, ...)
{
    int j = 0;
      va_list arg_ptr;    //第1步,定义这个指向参数列表的变量
va_start(arg_ptr, i);//第2步,把上面这个变量初始化.即让它指向参数列表

    while( j != ]]></description><category></category></item><item><title><![CDATA[屏蔽控制台应用程序的窗口#pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/52514166</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/52514166</guid><author>sql112113</author><pubDate>Mon, 12 Sep 2016 15:47:20 +0800</pubDate><description><![CDATA[屏蔽控制台应用程序的窗口#pragma comment(linker, "/subsystem:windows /ENTRY:mainCRTStartup")



众所周知，控制台应用程序一般都会显示一个控制台窗口（虚拟DOS窗口），但很多时候控制台程序的执行逻辑根本不需要与用户进行交互，所以显示这个难看的窗口纯属多余，那么如何将它屏蔽掉呢？下面我向大家介绍一种方法。
　　操作系统装载]]></description><category></category></item><item><title><![CDATA[assert()函数用法总结]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/9062053</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/9062053</guid><author>sql112113</author><pubDate>Sun, 09 Jun 2013 11:04:24 +0800</pubDate><description><![CDATA[assert宏的原型定义在中，其作用是如果它的条件返回错误，则终止程序执行，原型定义：

#include assert.h>
void assert( int expression );

　　assert的作用是现计算表达式 expression ，如果其值为假（即为0），那么它先向stderr打印一条出错信息，然后通过调用 abort 来终止程序运行。请看下面的程序清单badptr.]]></description><category></category></item><item><title><![CDATA[VC中回调函数的用法]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/9062009</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/9062009</guid><author>sql112113</author><pubDate>Sun, 09 Jun 2013 11:01:46 +0800</pubDate><description><![CDATA[回调函数，就是由你自己写的。你需要调用另外一个函数，而这个函数的其中一个参数，就
是你的这个回调函数名。这样，系统在必要的时候，就会调用你写的回调函数，这样你就可
以在回调函数里完成你要做的事。
 
  前些天写一个可编辑的ListCtrl类时,遇到这样一个问题,在ListCtrl的指定格中创建了一个Button,创建过程我写在
ListCtrlButtuon.cpp中,在对外提供的接中]]></description><category></category></item><item><title><![CDATA[C++虚函数与纯虚函数用法与区别]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/9000716</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/9000716</guid><author>sql112113</author><pubDate>Fri, 31 May 2013 15:20:16 +0800</pubDate><description><![CDATA[1. 虚函数和纯虚函数可以定义在同一个类(class)中，含有纯虚函数的类被称为抽象类(abstract class)，而只含有虚函数的类(class)不能被称为抽象类(abstract class)。
　　
2. 虚函数可以被直接使用，也可以被子类(sub class)重载以后以多态的形式调用，而纯虚函数必须在子类(sub class)中实现该函数才可以使用，因为纯虚函数在基类(base c]]></description><category></category></item><item><title><![CDATA[关于C++中的前置声明]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/8985130</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/8985130</guid><author>sql112113</author><pubDate>Tue, 28 May 2013 15:50:03 +0800</pubDate><description><![CDATA[编写C++程序的时候，偶尔需要用到前置声明(Forward
 declaration)。下面的程序中，带注释的那行就是类B的前置说明。这是必须的，因为类A中用到了类B，而类B的声明出现在类A的后面。如果没有类B的前置说明，下面的程序将不同通过编译，编译器将会给出类似“缺少类型说明符”这样的出错提示。




代码一：
// ForwardDeclaration.h
#include]]></description><category></category></item><item><title><![CDATA[vc6中 COleDateTime t = COleDateTime::GetCurrentTime(); 语句出问题]]></title><link>https://blog.youkuaiyun.com/sql112113/article/details/8622569</link><guid>https://blog.youkuaiyun.com/sql112113/article/details/8622569</guid><author>sql112113</author><pubDate>Thu, 28 Feb 2013 16:08:27 +0800</pubDate><description><![CDATA[vc6中 COleDateTime t = COleDateTime::GetCurrentTime(); 语句出问题
 编译没问题，但是运行的时候有问题，解决办法是 安装 sp6 补丁]]></description><category></category></item></channel></rss>