iLinux

自由、梦想、飞翔 --- Free Dream Soar

用户操作
[即时聊天] [发私信] [加为好友]
只爱LINUXID:forlinux
92770次访问,排名1056,好友15人,关注者16人。
forlinux的文章
原创 87 篇
翻译 0 篇
转载 68 篇
评论 76 篇
只爱LINUX的公告
机遇+努力=成功
努力才会有希望...
点击这里给我发消息
最近评论
forlinux:原始链接图片已丢失,现重新抓图上传,根据图中提示,即可方便到禁用该功能。
maxinliangGenius:大哥,你转的那里的文章,能不能说一下啊?
maxinliangGenius:大哥,你转的那里的文章,能不能说一下啊?
sknice:写的很好,受教了
yazhoucom:多谢,你提供的很详细
文章分类
收藏
相册
只爱这一秒
.NET资源
.net Free soft
dotnet开源
Filehelper-Exp/Imp Data2DB
MSDN-library
Ajax Framework
jquery——The writte less,do more
prototype.js
prototype.js开发者文档
JAVA资源
java开源大全
中国IT实验室ECLIPSE专题
linux资源
202.96.64.144
ChinaUnix网友空间
Cooperative Linux(colinux)
OpenSSH For Windows
Oracle On Linux
Reactos(Wine Base)
Wine模拟器
健兔linux
成都理工大学FTP
班图LINUX
红帽Linux
长江大学FTP
鳥哥的Linux私房菜
lnux社区
linuxsir.org
linux伊甸园
linux公社
PHP资源
Apache with Open SSL
Apache软件历史版本
phpv.net
中日韩翻译
数据库相关
Oracle NetWorking FAQ
友情链接
baidu博客分站
SourceForge主页
漂在生活
闲云
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes
2008年08月

转载 .Net中封装Windows 消息实现进程间通讯 收藏

.NET Framework 中对进程间的通讯支持不多,不过Windows API 已经为我们提供了丰富的进程间通讯的特性。我们可以使用Windows API SendMessage、PostMessage来实现windows 窗体之间的通讯。本文就是将SendMessage封装在一个窗体基类WinMsgData中,把它变成类中的一个方法以方便调用,而接收其他窗体的消息则封装成事件通知的形式提供。其中还对接收到的消息做队列处理,避免对消息发送方造成阻塞。所以只要程序中的WinForm从这个基类继承,就可以很方便的与其他的窗体进行通讯了。阅读全文>

发表于 @ 2008年08月08日 15:32:00|评论(loading...)|收藏

转载 C#中四种进程或线程同步互斥的控制方法收藏

 现在流行的进程线程同步互斥的控制机制,其实是由最原始最基本的4种方法实现的。由这4种方法组合优化就有了.Net和Java下灵活多变的,编程简便的线程进程控制手段。

  这4种方法具体定义如下 在《操作系统教程》ISBN 7-5053-6193-7 一书中可以找到更加详细的解释

  1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。

  2互斥量:为协调共同对一个共享资源的单独访问而设计的。

  3信号量:为控制一个具有有限数量用户资源而设计。

  4事 件:用来通知线程有一些事件已发生,从而启动后继任务的开始。

  临界区(Critical Section)

  保证在某一时刻只有一个线程能访问数据的简便办法。在任意时刻只允许一个线程对共享资源进行访问。如果有多个线程试图同时访问临界区,那么在有一个线程进入后其他所有试图访问此临界区的线程将被挂起,并一直持续到进入临界区的线程离开。临界区在被释放后,其他线程可以继续抢占,并以此达到用原子阅读全文>

发表于 @ 2008年08月08日 15:18:00|评论(loading...)|收藏

转载 C#共享内存操作类(含源码)收藏

原文地址:http://blog.csdn.net/hejishan/archive/2008/03/11/2169292.aspx

        VC++的共享内存操作代码实现起来相对比较容易,但是用C#语言来实现,就有一定难度,由于工作需要,把以前VC开发的共享内存代码要用C#实现,别说,还费了不少周折,毕竟C#操作API函数和地址指针不是那么直接,还好,总算完成了,效果还不错。


    

共享内存类:

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;阅读全文>

发表于 @ 2008年08月08日 15:14:00|评论(loading...)|收藏

转载 进程间通讯的方法收藏

原文出处:http://www.wangchao.net.cn/bbsdetail_45212.html   进程通常被定义为一个正在运行的程序的实例,它由两个部分组成:
   一个是操作系统用来管理进程的内核对象。内核对象也是系统用来存放关于进程的统计信息的地方
   另一个是地址空间,它包含所有的可执行模块或DLL模块的代码和数据。它还包含动态分配的空间。如线程堆栈和堆分配空间。每个进程被赋予它自己的虚拟地址空间,当进程中的一个线程正在运行时,该线程可以访问只属于它的进程的内存。属于其它进程的内存则是隐藏的,并不能被正在运行的线程访问。
   为了能在两个进程之间进行通讯,由以下几种方法可供参考:
  0。剪贴板Clipboard: 在16位时代常使用的方式,CWnd中提供支持
  1。窗口消息 标准的Windows消息以及专用的WM_COPYDATA消息 SENDMESSAGE()接收端必须有一个窗口阅读全文>

发表于 @ 2008年08月08日 15:04:00|评论(loading...)|收藏

转载 利用SendMessage实现C#进程间通信收藏

进程之间通讯的几种方法:
在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有
使用内存映射文件
通过共享内存DLL共享内存
使用SendMessage向另一进程发送WM_COPYDATA消息
比起前两种的复杂实现来,WM_COPYDATA消息无疑是一种经济实惠的一中方法.(ZT)

WM_COPYDATA消息的主要目的是允许在进程间传递只读数据。Windows在通过WM_COPYDATA消息传递期间,不提供继承同步方式。SDK文档推荐用户使用SendMessage函数,接受方在数据拷贝完成前不返回,这样发送方就不可能删除和修改数据:
这个函数的原型及其要用到的结构如下:
SendMessage(hwnd,WM_COPYDATA,wParam,lParam);
其中,WM_COPYDATA对应的十六进制数为0x004A
wParam设置为包含数据的窗口的句柄。lParam指向一个阅读全文>

发表于 @ 2008年08月06日 18:35:00|评论(loading...)|收藏

转载 C# 下的进程间的通讯 -- 发消息篇收藏

Net 并没有提供进程间通讯的类,其实这句话是不对的,.Net提供了强大的进程间通讯的功能,不仅可以完成本机上进程间的通讯,还可以完成网络上的任意两台计算机间的进程通讯。这些技术分别为WebService、企业级服务、.NET 远程处理,我会在后面的文章中逐步学习总结。
这里还是借助系统的功能来实现,提供一种利用发送消息的方法实现的进程间的通信。

发送方需要调用两个系统API:SendMessage与FindWindow。
非托管定义如下:

转载 利用IPC通道进行进程间通信(C#)收藏

有一个解决方案,其中包括一个Windows服务和一个Windows应用程序,两者之间需要进行通信。查了下,可以使用多种方法,如Web service(适用于不同系统及跨平台情况)、.NET Remoting、消息队列、WCF(集成了前述方法的功能,但太新,不支持Windows2000及以前的系统),其中Remoting可以支持TCP、HTTP、IPC通道的通信,而IPC通道速度快,且仅能供处于同一个系统中的进程间进行通讯,而这正好符合本项目的要求,故决定采用.NET Remoting的IPC方法: 阅读全文>

发表于 @ 2008年08月06日 17:15:00|评论(loading...)|收藏

转载 Start ServiceHosts for all configured Services 收藏

<i>Important Update: The originally presented code only works if the service is defined in the same assembly which hosts the service (because the name="" attribute in &lt;service&gt; may not contain the assembly name of the service). See at the end of the article for a slightly different version which works in all cases --- but which involves adding a second config file.<br></i><br>As WCF has reached RC1 stage, I find myself cleaning up a few bits of older WCF cod阅读全文>

发表于 @ 2008年08月06日 16:57:00|评论(loading...)|收藏

转载 C#操作EXCEL收藏

using System;
using System.Reflection;

namespace CExcel1
{

  class Class1
 {

  [STAThread]
  static void Main(string[] args)
  {

//创建Application对象
   Excel.Application xApp=new Excel.ApplicationClass();

   xApp.Visible=true;
   //得到WorkBook对象, 可以用两种方式之一: 下面的是打开已有的文件
   Excel.Workbook xBook=xApp.Workbooks._Open(@"D:\Sample.xls",
    Missing.Value,阅读全文>

发表于 @ 2008年08月05日 00:30:00|评论(loading...)|收藏

原创 解决Fedora linux 下 Rhythmbox中文显示乱码的问题收藏

step1.
yum  python-mutagen
step2.
转到mp3文件夹
mid3iconv -e GBK *.mp3
step3.
重新打开Rhythmbox,导入mp3
阅读全文>

发表于 @ 2008年08月03日 15:56:00|评论(loading...)|收藏

转载 system:initrd和nash收藏

1、什么是initrd

  • initrd 的英文含义是 boot loader initialized RAM disk,即由引导程序初始化的RAM磁盘。initrd是在实际根文件系统可用之前挂载到系统中的一个初始根文件系统。initrd与内核绑定在一起, 并作为内核引导过程的一部分进行加载。内核然后会将这个initrd文件作为其阶段引导过程的一部分来加载模块,这样才能在以后的引导过程中使用真正的文 件系统,并挂载实际的根文件系统。根文件系统可以存储在包括IDE、SCSI、USB在内的多种介质上,如果将这些设备的驱动都编译进内核,可以想象内核 会多么庞大、臃肿。所以可以把initrd看做是在启动过程中连接内核与根文件系统的一个桥梁。

initrd 中包含了实现这个目标所需要的目录和可执行程序的最小集合,阅读全文>

发表于 @ 2008年08月03日 10:11:00|评论(loading...)|收藏

原创 Fedora Linux 的启动分析(转)收藏

<div id="post_message_1641613" style="overflow-x: hidden;">缘起<br><br>我使用linux有一段时间了,最开始和大多数人一样,使用的是redhat,后来机缘巧合之下,我需要使用gentoo帮别人解决一个问题,从此喜欢上了gentoo,并且在这只小兔子身上学习到了很多东西。后来ubuntu如火如荼的流行,周围也有一些朋友开始转换至ubuntu,在使用redhat的时候,安装软件通常等于上网寻找源代码,make和 makeinstall,使用了gentoo以后,安装软件等于emerge软件名字,这个转变当然让我觉得很爽,但是由于我只有一个很烂的旧电脑,内存也不是很强劲,我不得不总是对我的家人说:今晚要开一晚上的机器,它要工作。然后,我开始在升级和使用旧版本之间进行取舍,最终,我的gentoo变成了一个无法升级的老牛拉破车。 至今我仍认为Gentoo是非常好的linux发行版,不过,前提是你有一个很快的机器,它又一个超大的内存和强劲的CPU。ubuntu的出现让我多了一个选择,它是一个二进制的阅读全文>

发表于 @ 2008年08月03日 09:54:00|评论(loading...)|收藏

原创 Linux initrd的分析、创建和使用(转)收藏

http://www.ibm.com/developerworks/cn/linux/l-initrd.html

------------------------------------------------------------------------------------------------------------------阅读全文>

发表于 @ 2008年08月03日 09:14:00|评论(loading...)|收藏

Csdn Blog version 3.1a
Copyright © 只爱LINUX