兔八哥极品软件园    运行: 4509天 | 文章:640 篇 | 评论:554 条 | 碎语:1条

.NET强制退出Application.Exit()方法和Environment.Exit(0)方法

作者:admin 发布于:2012-8-14 8:26 Tuesday 分类:.NET

.net类库已经帮助我们实现了窗口的关闭,如果此窗口是系统的主窗口,关闭此窗口即应该退出了整个应用程序。
但事实上有时候并不是这样的,关闭窗口,只是停止了当前窗口的消息循环。

系统主窗口,实质上是Main函数中开始消息循环的窗口,这个消息循环结束后,Main函数就基本上完成了历史使命,整个应用程序自然就结束了。


Application.Exit()方法是终止所有线程上的消息循环,一般情况下,无论在什么地方调用此方法,程序就能退出。
但是如果你在程序中加入了某些耗时甚至是死循环的线程,那么即使是消息循环终止,程序也依然不会结束。
比较温和比较合适的做法是结束消息循环之前,终止所有自己新建的线程。
有时候我们连自己也搞不清楚到底是那些顽固的线程在执行,就需要用点暴力的手段了。.net为我们提供...

阅读全文>>

评论(0) 引用(176) 浏览(32855)

.NET自带类完美计算MD5

作者:admin 发布于:2012-8-14 8:23 Tuesday 分类:.NET

using System;
using System.Collections.Generic;
using System.Text;

using System.Security.Cryptography;
using System.IO;

namespace RabbitExt
{
    public class Md5Ext
    {
        private static MD5 md5 = new MD5CryptoServiceProvider();

        public Md5Ext()
        {
        }

        private static string MD5ByteToStr(byte[] b)
        {
  ...

阅读全文>>

标签: MD5

评论(0) 引用(350) 浏览(61726)

C# 判断计算机是台式机还是笔记本

作者:admin 发布于:2012-8-14 8:18 Tuesday 分类:.NET

一个简单的方法是通过 WMI 查询系统信息 Win32_SystemEnclosure 类,ChassisTypes指示计算机类型

有 22 种已知类型,多数我们平时见不到,最常见的当然是Desptop(3)和Laptop(9)(较老型号),Notebook(10)。

using System.Management;

public enum ChassisTypes
{
    Other = 1,
    Unknown,
    Desktop,
    LowProfileDesktop,
    PizzaBox,
    MiniTower,
    Tower,
    Portable,
    Laptop,
    Notebook,
    H...

阅读全文>>

标签: Win32_SystemEnclosure

评论(0) 引用(366) 浏览(19432)

PS 去除图片文字方法集合

作者:admin 发布于:2012-8-11 8:28 Saturday 分类:网络转载

1、使用仿制图章工具去除文字。

这是比较常用的方法。具体的操作是,选取仿制图章工具,按住 Alt键,在无文字区域点击相似的色彩或图案采样,

然后在文字 区域拖动鼠标复制以复盖文字。 要注意的是,采样点即为复制的起始点。

选择不同的笔刷直径会影响绘制的范围,而不同的笔刷 硬度会影响绘制区域的边缘融合效果。

2、使用修补工具去除文字。

如果图片的背景色彩或图案比较一致,使用修补工具就比较方便。具体的操作是,选取修补工具,

在公共栏中选择修补项为“源”,关闭 “透明”选项。然后用修补工具框选文字,拖动到无文字区域中色彩

或图案相似的位置,松开鼠标就完成复制。修补工具具有自动匹配颜 色的功能,复制出的效果与周围的色彩较为融合,

这是仿制图章工具 所不具备的。

3,使用修复画笔工具去除文字。

操作的方法与仿制图章...

阅读全文>>

标签: ps

评论(0) 引用(425) 浏览(30492)

C++ 中 Cstring char char* int 互相转换

作者:admin 发布于:2012-8-10 15:36 Friday 分类:Windows

string 转 CString

CString.format(”%s”, string.c_str());    //用c_str()确实比data()要好;

char 转 CString

CString.format(”%s”, char*);

char 转 string

string s(char *);    //只能初始化,在不是初始化的地方最好还是用assign().

string 转 char *

char *p = string.c_str();

CString 转 string

string s(CString.GetBuffer());//GetBuffer()后要ReleaseBuffer(),否则不会释放缓冲区所占的空间
字符串的内容转换为字符数组和C—string
(1)  data(),返回没有”\0“的字符串数组
(2)  c_str(),返回有”\0...

阅读全文>>

评论(0) 引用(74) 浏览(31513)


Powered by 兔八哥极品软件 苏ICP备12049267号 sitemap