当前位置:StudyEZ>学易考试社区>所有标签>计算机编程 (RSS)
  • Vista下MoveFileEx, CopyFile函数的问题

    由于Vista的用户权限管理与以前的Windows相差比较大, 我们发现许多函数执行结果会有一些差异, 今天我们遇上了这样一个问题: 我们使用ActiveX控件从网络上下载了一个文件存放在Temp文件夹里面, 然后使用MoveFileEx移到当前用户AppData文件夹里面, 结果发现函数返回值是成功的, 原来的文件也已经被删除, 可是目标文件怎么也找不到. 对于CopyFile也有同样的现象. 最后我们的解决方案是把数据放在Temp文件夹, 也就是实际上没有找到原因所在. 我们也写了简单的程序完成类似的MoveFileEx功能, 却发现没有任何问题, 非常怪异.
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2008-03-28
  • assert使用的一个注意点

    在C++程序中使用断言是一个良好编程习惯, 但是使用assert的时候有一点需要注意, assert或者ASSERT在VC++中是以宏的方式实现的 注意到它的定义,它只有在DEBUG模式下才起作用, 我们使用断言的时候, 断言中应该只包含判断, 而不应该有其他行为. 这一次我们程序开发中就出现了这样一个问题: 程序在DEBUG下执行没有任何问题, 可是在Release下执行的时候却总是出错, 后来发现原来我们有一个初始化函数放在断言里面执行了, 既有一个函数Init, 返回的是布尔值, 结果我们直接这样使用断言了assert(Init()), 这在Release下面根本就不会出现Init了.自然会出错...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-08-11
  • Applications=Code+Markup 读书笔记3 第一章 The Application And The Window (2)

    前面一节主要是讨论Window, 这一节讨论Application. 一个应用程序只能有一个Application实例 . Application中有几个事件非常有用. OnStartUp(StartUp事件)在调用了Application的Run方法之后马上执行, 而OnExit(Exit事件)方法是在Run方法返回的时候执行, 这两个方法非常适合用于初始化和释放资源. OnSessionEnding方法用于处理SessionEnding事件, 在关闭Windows或者关机的时候激发该消息, 该消息中有一个参数SessionEndingCancelEventArgs, 其中有一个属性Cancel...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-08-04
  • PostMessage的一个特殊用途

    在使用MFC编程的时候遇上了这样一个怪异的问题: 我的对话框里面有一个WebBrowser控件, 我希望对话框打开的时候能够显示我需要的数据, 这是一个动态改变WebBrowser里面的数据的操作, 我响应了DocumentComplete消息,可是很快就发现有这样一个问题: 每次更改都不能成功, 可是在我进行调试, 假如一个MessageBox的时候,这个修改就是成功的, 同样的, 在对话框打开之后, 使用其它操作, 例如点击按钮来修改WebBrowser的数据也是成功的, 这下问题变得怪异了. 后来请教了同事, 在这里使用了PostMessage之后,问题以外解决, 就是在响应DocumentComplete消息的地方...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-07-16
  • 关于CCheckListBox的一点用法

    在MFC程序中使用CCheckListBox的时候, 如果使用对话框模版, 需要把列表框设置成Owner Draw, Fixed的, 最好带上has string, 这里主要是说明如何获得点击选择的消息, 选中,或者取消选中, 在察看源代码之后可以发现, 这个时候CCheckListBox会向父窗口发送一个WM_COMMAND的消息, 消息的WPARAM中低位表示的CCheckListBox的ID, 高位是CLBN_CHKCHANGE(40), 所以对于MFC程序, 重载OnCommand即可. 或者MFC提供了宏ON_CLBN_CHKCHANGE(id, memberfunc)也可以.
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-07-13
  • 关于GetDIBits函数的使用问题

    最近在编程的时候需要获取位图的二进制数据, 在使用GetDIBits函数的时候发现一个古怪的问题, 虽然解决了其中的问题, 但是没有找到其中的原因.这里描述一些遇到的问题. 第一次:为了从位图句柄得到数据, 创建了内存设备描述句柄, 而后根据MSDN描述, 两次调用GetDIBits函数, 第一次得到位图的参数, 第二次获得二进制数据, 最后发现我在Debug模式下执行没有任何问题(实际上是有问题, 只是程序不会报错), 可是在Release下就会出现严重的错误: 操作的内存是只读的. 后来仍旧在Debug下跟踪发现, 在第二次调用GetDIBits的时候, 内存设备描述句柄被改变了. 为了发现这个问题...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-05-28
  • Applications=Code+Markup 读书笔记2 第一章 The Application And The Window (1)

    这一章的程序都非常简单, 但是在这一章会形成一个简单的约定, 本书的大部分例子都将采取类似的处理: WPF程序基本上都和窗口相关, 于是我们都会从Window类继承一个类, 然后构建这个类的一个实例. 例子1 SayHello.cs using System; using System.Windows; namespace Petzold.SayHello { class SayHello { [STAThread] public static void Main() { Window win = new Window(); win.Title = "Say Hello";...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-05-27
  • “不能访问Windows Installer服务”问题解决

    今天遇上一位客户在安装软件的时候出现这样的问题:“不能访问Windows Installer服务”,在网络上搜索得到如下解决方案: 如果你的系统是 WinXP,在安装 Office2003 时出现了“不能访问 Windows Installer 服务,可能是你在安全摸式下运行 Windows 或 Window Installer 没有正确安装”错误(实际上是所有使用 Windows Installer 服务安装的 MSI 格式程序均不能正常安装);在“服务”里查看“Windows Installer ”服务的状态...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-05-16
  • Applications=Code+Markup 读书笔记1 引论

    《 Applications=Code+Markup 》 一书是Charles Petzold(著名的《Windows程序设计》一书的作者)的新作, 书名显然是参考了著名的公式: 程序=算法+数据结构. 目前电子书可以在网络上找到. 这一部分简单介绍一下开发环境的搭配, 以及如何建立第一个应用程序. WPF全称为Windows Presentation Fondation, 是.Net 3.0的一部分. 所以要进行WPF开发, 必须安装.Net 3.0 SDK, 为了方便, 我们还需要一个IDE开发环境(VS2005), 下面的相关信息来自 蔡学镛的"WPF精粹" , 目前他的相关在...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-05-13
  • 客户端调用WebService, 解析XML数据涉及到的命名空间问题

    在客户端可以使用XMLHTTP调用Web Service, 可是在解析返回数据(XML格式数据)的时候, 可能会涉及到和命名空间相关的问题, 无法获取数据.尤其是使用selectNodes或者selectSingleNode之类的函数的时候, 经过摸索, 发现XMLDOM有一个方法setProperty可以设置namespace, 即在获取数据之前使用XMLDOM.setProperty(" SelectionNamespaces ", "xmlns:ns='http://uri'"), 然后在selectNodes或者selectSingleNode的时候使用名称空间ns即可...
    发表在 zhaoyang0618 (Weblog) 作者 zhaoyang0618 于 2007-05-11
第 1/2 页(共20 项) 1 2 下一页