关闭

Not implemented (Exception from HRESULT: 0x80004001 (E_NOTIMPL))

今天在调试之前的代码:chart.ChartArea.Copy();时出现了这个问题,翻译过来就是chart的ChartArea.Copy()方法没有实现。当时觉得很奇怪,因为这段代码时一个成熟产品里面的,很多的现场都在使用,怎么可能出现问题。后面分析原因应该是改方法在Microsoft.Office.Interop.Excel 14.0中才支持,由于我本机安装了WPS,它修改了Com组件的注册信...
阅读(116) 评论(0)

对 IID 为“{00020970-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。

原文地址:http://www.cnblogs.com/gisoracle/p/5440846.html 无法将类型为“Excel.ApplicationClass”的 COM 对象强制转换为接口类  型“Excel._Application”。此操作失败的原因是对 IID 为“{000208D5  -0000-0000-C000-000000000046}”的接口的 COM 组件调用 ...
阅读(743) 评论(1)

【C#语法】类和方法的特性Attribute

一、引言                 今天,我们来聊一下C#中的特性Attribute。何为特性Attribute?我们先看一个特性的使用例子,我们定义了一个Human类,但是由于某种原因该类不再被使用,但是我又不想将该类的代码注释或者删除掉,于是我们就可以通过给它赋予Obsolete特性来禁止别人使用: [Obsolete("该类已经过时,不能再使用",true)] pu...
阅读(191) 评论(0)

Win32 SDK基础(13)—— 键盘和鼠标消息

一、键盘消息 1、键盘消息 WM_KEYDOWN —— 键盘按键按下时产生。 WM_KEYUP —— 键盘按键弹起时产生。 WM_SYSKEYDOWN —— 系统按键按下时产生,如ALT、F10等等 WM_SYSKEUP —— 系统放开时产生 WM_CHAR —— 字符消息 2、消息参数: 按键消息: WPARAM —— 按键的VirtualKey(虚拟键码) LPARAM —...
阅读(607) 评论(0)

Win32 SDK基础(12)—— WM_PAINT消息的处理

一、引言         在计算机中,屏幕上显示的一切东西几乎都是绘制的,包括窗口、对话框、图片、以及一切文字,而WM_PAINT消息就是在绘制这些对象时,系统触发的消息。我们在计算机中的每一个操作,几乎都会触发这个消息,它也是WIndows中最重要的消息之一。本文主要针对该消息进行试验,以进行全面的学习。 二、WM_PAINT基础  2.1 宏定义 #define WM_PAIN...
阅读(971) 评论(0)

Win32 SDK基础(11)—— 消息队列和GetMessage/PeekMessage、SendMessage/Postmesage

一、消息队列 1.1 消息队列         消息队列是用来存放消息的一个队列,消息在队列中先入先出,所有的窗口程序都具有消息队列,程序可以从队列中获取消息。 1.2 消息队列的类型         系统消息队列:由操作系统维护的消息队列,存放系统产生的消息,如鼠标、键盘消息等等。         程序消息队列:属于每一个应用程序(线程)的消息队列,用应用程序维护。...
阅读(633) 评论(0)

36.动态SQL

一、引言        前面介绍的所有内容,所操作的数据库表必须存在,否则执行子程序时就会出现问题,这种方法叫做静态SQL。PLSQL中有一种能够定义程序时不指定具体的操作对象,在执行时动态传入对象的技术,叫做动态SQL。 二、动态的创建表格并返回表格行数        下面的代码,我们定义了一个名叫get_table_count_fun的function,该函数接收一个字符串格式的表名作为...
阅读(684) 评论(1)

35.表级和行级DML触发器

一、引言         触发器类似于过程和函数,都有程序主题部分(声明段、可执行段、异常处理段),但是调用其和函数不同,触发器为依靠事件执行的,且由于其是隐式调用的,触发器没有参数。         本文主要介绍oracle中的DML触发器,顾名思义就是执行DML语句对表进行增、改、查时执行的触发器。         我们先创建如下的表myemp: create table myemp ...
阅读(525) 评论(0)

34.C#调用Oracle中的包

在上一文中我们介绍了PLSQL中包创建方法,本文介绍在C#中调用包中存储函数和存储过程的方法,以上一文中我们封装到emp_pack包中的get_emp_func函数为例,我们介绍C#中调用该函数的方法。         首先,emp_pack包体的定义如下: create or replace package body emp_pack as function get_emp_func(...
阅读(731) 评论(0)

33.PLSQL中的包

一、引言         PLSQL中的包类似于C++中的类,在包中我们可以定义变量、游标、存储过程、存储函数等等。它实现了将上述类型统一创建和管理,同时在不同包之间这个PLSQL的对象不会存在命名冲突问题。包的定义包含两部分,包头和包体,有点类似于C++中的类的头文件和cpp文件。在包头中我们对变量、存储过程等等进行声明,而在包体中是对他们的实现。下面,我们在emp表的基础之上介绍包的用法。如...
阅读(513) 评论(0)

32.C#调用Oracle的存储过程和函数

一、引言                 在前面的文章中我们分别讲解了Oracle中存储过程和存储函数创建的方法,本文主要介绍在C#中调用之前创建的存储过程和函数的方法。 二、C#调用带参的存储过程         首先,假设我们有以下数据表emp:       并创建了存储过程insert_emp: create or replace procedure insert_emp...
阅读(422) 评论(0)

31.PLSQL中的函数

一、存储函数的定义         函数是PLSQL中另一种子程序,与存储过程不同的是,存储函数具有返回值,就像C/C++中的函数一样,可以通过函数返回某些值,我们先来看下下面定义的一个返回雇员薪资的函数: create or replace function get_income(v_empno emp.empno%type) return number as v_income emp.s...
阅读(730) 评论(0)

30.PLSQL中的过程

一、引言         过程,是对一组PLSQL语句的封装,以达到代码复用的目的。创建一个过程之后,它便存储在了数据库中,我们随时随地可在其他PLSQL的数据块中进行引用。 二、创建一个简单的存储过程         接下来,我们先创建一个简单的显示“Hello World”的存储过程,代码如下: create procedure print_proc as begin dbms_o...
阅读(593) 评论(0)

29.PLSQL中的参考游标

在上一文中,我们介绍了使用PLSQL的显式游标,该类游标在声明之初已经和sql语句进行了绑定,属于静态的游标。而本文中我们介绍的参考游标,属于动态游标,在其声明时未绑定sql语句,而我们在使用时可以动态的绑定sql语句。         如下,假设存在下表emp:         现在我们利用参考游标来实现打印输出deptno为20的所有雇员的信息: declare type c...
阅读(721) 评论(0)

28.PLSQL中的显式游标

在上一文中,介绍了PLSQL中的隐式游标的用法,本文主要介绍另外一种游标的使用——显式游标。 一、显式游标声明和属性 1.1 显式游标的声明         所谓显式游标,就是我们在PLSQL的声明区,显式的去声明的游标,它在声明时已经绑定的SQL语句,将会管理该SQL语句返回的结果集,其声明格式如下: cursor 游标名称 is SQL语句        如果声明一个管理emp表查询...
阅读(583) 评论(0)
310条 共21页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:369526次
    • 积分:6485
    • 等级:
    • 排名:第3931名
    • 原创:292篇
    • 转载:17篇
    • 译文:1篇
    • 评论:61条
    其它平台
    博客专栏