[QQ]让电脑只能登录指定QQ号码,限制其他QQ登陆方法

mikel阅读(606)

这里有一个方法可以电脑只能登录指定QQ号码,供大家参考。

  1、首先登录允许登录的QQ号码,(如果已经在电脑上登录过了,这步可以省略)主要目的就是把自己的QQ号码记录下来,这样在QQ的安装文件夹里就会出来你自己的QQ号码文件夹。如图1

  让电脑只能登录指定QQ号码

  2、进入到你安装QQ的目录中,把其它人的QQ号码文件夹进行删除,只留下你需要登录的QQ号码文件夹即可。

  3、进入到你安装QQ的目录中,找到“WizardCtrl.dll”(动态链接库文件),将该文件删除或者移动到其他的目录中。这里我建议大家改名就可以了,把WizardCtrl最后一个字母改为1,哈哈,这样不容易被人发现。如果删除,以后想恢复就有点麻烦。

  让电脑只能登录指定QQ号码

  当完成以上三步的时候,你的电脑就只认你的QQ号了,其它人的QQ号进行登录的时候,一律无反应。

[QQ]ws2_32.dll 禁止使用某个软件

mikel阅读(677)

一般在自己电脑上,不会不想使用某个软件,但却有些软件不想让别人使用。怎么办?
方法:
在该软件安装目录下新建一个文件名为 ws2_32.dll 的文件(建立一个空的文本文件,然后将文件名改为ws2_32.dll,注意扩展名。) 此后在运行该软件应用程序时,系统就会有出错提示:“应用程序或 DLL X:\XXX\XXX\ws2_32.dll 为无效的  Windows 映像。请再检测一遍您的安装盘。”该软件就不能被使用了。本方法适用基于NT系统的WinXP, Win2000, Win2003。
当然,这只是一个小技巧。如果你想在别人的电脑上玩游戏,却发现不能运行程序,那就赶快到该游戏的安装目录下看看,有没有一个 ws2_32.dll 的文件。
简单原理:
ws2_32.dll 是 Windows Sockets应用程序接口,用于支持 Internet 和网络应用程序,是个动态链接库文件。程序运行时会自动调用 ws2_32.dll 文件。而 Windows 在查找动态链接库文件时会先在应用程序当前目录搜索,但此时该目录下的文件是重建的一个空文件,所以程序就不能被正常运行了。
一些知识:
ws2_32.dll 一般位于系统文件夹中。Windows 在应用程序当前目录没有找到然后会去搜索 Windows 所在目录,如果还是没有会搜索 system32 和 system 目录。一些病毒利用此原理在杀毒软件目录中建立伪 "ws2_32.dll" 的文件或文件夹,在杀毒软件看来这是程序运行需要的文件而调用,这个所谓的“文件”又不具备系统 "ws2_32.dll" 文件的功能,所以杀毒软件等就无法运行了而提示:应用程序正常初始化 (0xc00000ba) 失败!
伪 "ws2_32.dll" 文件夹其实重命名之后程序就可以运行的,但是有个没用的又无法删除的文件夹看着也不舒服,因此这个内部含有非法文件名的文件夹就用下面方法删除:
1. 解压附件里面的文件(修复“显示所有文件和文件夹”.reg),双击它修复显示所有文件和文件夹。然后在资源管理器上点击工具>>选项 >>查看,将隐藏受保护的操作系系统(推荐)的勾去掉,勾选显示所有文件和文件夹之后一路的确认,好了现在隐藏的文件全部显示出来。(临时解 决办法可以将 ws2_32.dll 文件夹改个名称,要彻底删除请往下看。)
2. 到杀毒软件的安装目录下找到以伪 "ws2_32.dll" 的文件夹(一般隐藏的文件夹颜色略白)。
3. 解压附件里面的“将畸形文件托到我上面.bat”到任意目录,用鼠标左键点击将要删除的 ws2_32.dll 文件或者文件夹(一般这些目录下的隐藏文件都需要删除)按住不松然后拖放到该文件图标上(就像把文件拖到文件夹里的操作一样,此工具双击是不能运行的), 一个 CMD 窗口闪烁之后伪 "ws2_32.dll" 文件夹就被删除了。你需要的软件就可以启动了!此批处理文件也可以删除其他文件名怪怪的文件。

[QQ]揭密:映像劫持病毒的原理及预防

mikel阅读(833)

【简 介】
所谓的映像劫持(IFEO)就是Image File Execution Options,位于注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options 由于这个项主要是用来调试程序用的,对一般用户意义不大。默认是只有管理员和local system有权读写修改。
  映像劫持的定义
  所谓的映像劫持(IFEO)就是Image File Execution Options,位于注册表的
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options 由于这个项主要是用来调试程序用的,对一般用户意义不大。默认是只有管理员和local system有权读写修改。
  通俗一点来说,就是比如我想运行QQ.exe,结果运行的却是FlashGet.exe,也就是说在这种情况下,QQ程序被FLASHGET给劫持了,即你想运行的程序被另外一个程序代替了。
  映像劫持病毒
  虽然映像劫持是系统自带的功能,对我们一般用户来说根本没什么用的必要,但是就有一些病毒通过映像劫持来做文章,表面上看起来是运行了一个程序,实际上病毒已经在后台运行了。
  大部分的病毒和木马都是通过加载系统启动项来运行的,也有一些是注册成为系统服务来启动,他们主要通过修改注册表来实现这个目的,主要有以下几个方面:
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
  HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
  但是与一般的木马,病毒不同的是,就有一些病毒偏偏不通过这些来加载自己,不随着系统的启动运行,而是等到你运行某个特定的程序的时候运行, 这也抓住了一些用户的心理,一般的用户,只要发觉自己的机子中了病毒,首先要察看的就是系统的加载项,很少有人会想到映像劫持,这也是这种病毒高明的地 方。
  映像劫持病毒主要通过修改注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution options 项来劫持正常的程序,比如有一个病毒 vires.exe 要劫持 qq 程序,它会在上面注册表的位置新建一个qq.exe项,再这个项下面新建一个字符串的键值 Debugger 内容是:C:\WINDOWS\SYSTEM32\VIRES.EXE(这里是病毒藏身的目录)即可。当然如果你把该字符串值改为任意的其他值的话,系统 就会提示找不到该文件。
  映像胁持的基本原理
  WINDOWS NT系统在试图执行一个从命令行调用的可执行文件运行请求时,先会检查运行程序是不是可执行文件,如果是的话,再检查格式的,然后就会检查是否存在。如果 不存在的话,它会提示系统找不到文件或者是“指定的路径不正确等等。把这些键删除后,程序就可以运行!
  映像劫持的应用
  ★ 禁止某些程序的运行
  先看一段代码:
  Windows Registry Editor Version 5.00
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File
Execution Options\qq.exe]
  "Debugger"="123.exe"
  把它保存为 norun_qq.reg,双击导入注册表,打开你的QQ看一下效果!
  这段代码的作用是禁止QQ运行,每次双击运行QQ的时候,系统都会弹出一个框提示说找不到QQ,原因就是QQ被重定向了。如果要让QQ继续运行的话,把123.exe改为其安装目录就可以了。
  ★ 偷梁换柱恶作剧
  每次我们按下CTRL+ALT+DEL键时,都会弹出任务管理器,想不想在我们按下这些键的时候让它弹出命令提示符窗口,下面就教你怎么玩:
  Windows Registry Editor Version 5.00
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File
Execution Options\taskmgr.exe]
  "Debugger"="C:\\WINDOWS\\pchealth\\helpctr\\binaries\\msconfig.exe"
  将上面的代码另存为 task_cmd.reg,双击导入注册表。按下那三个键看是什么效果,不用我说了吧,是不是很惊讶啊!精彩的还在后头呢?
  ★让病毒迷失自我
  同上面的道理一样,如果我们把病毒程序给重定向了,是不是病毒就不能运行了,答案是肯定的!下面就自己试着玩吧!
  Windows Registry Editor Version 5.00
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File
Execution Options\sppoolsv.exe]
  "Debugger"="123.exe"
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File
Execution Options\logo_1.exe]
  "Debugger"="123.exe"
  上面的代码是以金猪病毒和威金病毒为例,这样即使这些病毒在系统启动项里面,即使随系统运行了,但是由于映象劫持的重定向作用,还是会被系统提示无法找到病毒文件(这里是logo_1.exe和sppoolsv.exe)。是不是很过瘾啊,想不到病毒也有今天!
  当然你也可以把病毒程序重定向到你要启动的程序中去,如果你想让QQ开机自启动,你可以把上面的123.exe改为你QQ的安装路径即可,但是前提是这些病毒必须是随系统的启动而启动的。
映像劫持的应用也讲了不少了,下面就给大家介绍一下如何防止映象劫持吧!
  映像劫持的预防
  ★权限限制法
  如果用户无权访问该注册表项了,它也就无法修改这些东西了。打开注册表编辑器,进入
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options ,选中该项,右键——>权限——>高级,将administrator 和 system 用户的权限调低即可(这里只要把写入操作给取消就行了)。
  ★快刀斩乱麻法
  打开注册表编辑器,进入把HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
项,直接删掉 Image File Execution Options 项即可解决问题。

[QQ]禁止和恢复QQ运行

mikel阅读(750)

客户端上网控制( 为ISA定义一个域名集,现在只可访问指定网站)
企业禁止qq运行

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\QQ.exe]
"Debugger"="cmd.exe"

 恢复qq运行
  @echo off
  reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\QQ.exe"  /f

[模板] .Net下模板引擎NVelocity的封装类――VelocityHelper

mikel阅读(863)

最近在做一个项目,客户要求有网站模板功能,能够自主编辑网站的风格,因为这个系统是为政府部门做子站系统,举个例如:每个街道办拥有一个站点,而且可以设置他们的风格。

ASP.NET下的Skin技术可能能够实现这个功能的,不过我个人觉得ASP.NET的Skin技术相对于我的项目来过于复杂了,我需要一个能像PHP下Smarty模板技术的就足够了。在网络上搜索了一阵,最后找到了NVelocity

NVelocity是Java模板引擎Velocity的.Net版本。NVelocity目前官方版本为0.42。官方地址:http://nvelocity.sourceforge.net/, 原作者已经申明不再对NVelocity做技术支持了,所以sourceforge上NVelocity版本一直是0.42不再有更新了。不过目前 NVelocity已经有1.0的版本了,是由castleproject项目维护的。NVelocity.dll能在castle项目中找到。 Castleproject地址:http://www.castleproject.org/。

要使用NVelocity模板技术需要学习VTL语言。网络上关于NVelocity的VTL语言介绍的比较少,不过没有关系,由于NVelocity是有Velocity移植过来的所以Velocity的VTL语言完全适用于NVelocity。下面我们来封装一个VelocityHelper类以方便NVelocity在在.NET中使用

VelocityHelper.cs 文件

using System;
using System;
using System.Web;
using System.IO;
using NVelocity;
using NVelocity.App;
using NVelocity.Context;
using NVelocity.Runtime;
using Commons.Collections;
 
///
/// NVelocity模板工具类 VelocityHelper
///
public class VelocityHelper
{
private VelocityEngine velocity = null;
private IContext context = null;
///
/// 构造函数
///
///
模板文件夹路径
public VelocityHelper(string templatDir)
{
Init(templatDir);
}
///
/// 无参数构造函数
///
public VelocityHelper() { ;}
///
/// 初始话NVelocity模块
///
///
模板文件夹路径
public void Init(string templatDir)
{
//创建VelocityEngine实例对象
velocity = new VelocityEngine();
 
//使用设置初始化VelocityEngine
ExtendedProperties props = new ExtendedProperties();
props.AddProperty(RuntimeConstants.RESOURCE_LOADER, "file");
props.AddProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, HttpContext.Current.Server.MapPath(templatDir));
props.AddProperty(RuntimeConstants.INPUT_ENCODING, "gb2312");
props.AddProperty(RuntimeConstants.OUTPUT_ENCODING, "gb2312");
velocity.Init(props);
 
//为模板变量赋值
context = new VelocityContext();
}
///
/// 给模板变量赋值
///
///
模板变量
///
模板变量值
public void Put(string key, object value)
{
if (context == null)
context = new VelocityContext();
context.Put(key, value);
}
///
/// 显示模板
///
///
模板文件名
public void Display(string templatFileName)
{
//从文件中读取模板
Template template = velocity.GetTemplate(templatFileName);
//合并模板
StringWriter writer = new StringWriter();
template.Merge(context, writer);
//输出
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Write(writer.ToString());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
}

使用方法:

VelocityHelper vh = new VelocityHelper();
vh.Init(@"templates");//指定模板文件的相对路径
vh.Put("title", "员工信息");
vh.Put("comName","成都xxxx里公司");
vh.Put("property","天营");
vh.Put("comAddress","四川成都市");
 
ArrayList aems = new ArrayList();
aems.Add(new EM("小李",22,"男"));
aems.Add(new EM("小王",21,"女"));
aems.Add(new EM("小周",22,"男"));
aems.Add(new EM("小瓜",32,"男"));
vh.Put("aems", aems);
 
//使用tp1.htm模板显示
vh.Display("tp1.htm");

注意上面只有关键性的代码,如EM为员工类。完整代码请在下面下载。

找不到NVelocity.dll的朋友可以在这里下载:

VelocityHelper封装类以及使用Demo 其中的NVelocity.dll是1.0版本的

Velocity中文手册下载这个VLT语言一样适用于NVelocity

[MVC]MVC实用集锦(1)

mikel阅读(754)

最近的项目是用ASP.NET MVC开发的,所以希望从实际开发的角度,通过一些实例,帮助大家快速的开发ASP.NET MVC程序。
 1.创建控件,MVC中通过htmlHelper生成HTML标签。

1 <%= Html.TextBox("UserName")%>
2 <%= Html.TextBox("UserName","Coolin")%>
3 <%= Html.TextBox("UserName","Coolin",
            new { @class = "className",disabled = true })%>

最后一项htmlAttributes,可以设置样式等属性。
2.RegisterRoutes带来了什么变化。通过VS创建一个MVC应用程序,会在Global.asax中看到下面的代码(我添加了第一条)
 

 1 routes.MapRoute(
 2         "Account",   
 3         "{Account}/{List}/{type}",                                 
 4         new { controller = "Account", action = "List" }  
 5   );
 6 
 7 routes.MapRoute(
 8         "Default",                                                           
 9         "{controller}/{action}/{id}",                                 
10         new { controller = "Home", action = "Index", id = "" }  
11   );

      
现在看一下它带来的变化,假设view有如下代码

1 <%= Html.ActionLink("男性""List"new { type = "Man" }) %>
2 <%= Html.ActionLink("女性""List"new { type = "Woman" }) %>

1 <%= Url.RouteUrl("Account"new { controller = "Account", action = "List", type= "Man" }) %>
2 <%= Url.RouteUrl("Account"new { controller = "Account", action = "List", type= "Woman" }) %>

对应的Url应该是  localhost:XXXX/Account/List/Man 和 localhost:XXXX/Account/List/Woman
当然也可以不在Global.asax中注册那条规则,对应的Url就会变成大家熟悉的 localhost:XXXX/Account/List?type=Man。
顺 便提一下我在开发中遇到过的一个问题,还以上面的例子为例,在程序的开发阶段,没有加入刚才那条规则,当我们在程序中加入了 sitemap(mvcsitemap),结果却是sitemap的路径永远不能指向Woman的路径,可能是sitemap不能通过 ?后面参数区分路径,后来加入了这条规则,url中去掉参数,问题解决了。
3.ajax异步请求controller
controller中有如下代码

1 public ActionResult Delete(Guid id)
2 {
3      Delete(id);
4      return Json(new { success = true });
5 }

 view中代码如下

1 $.getJSON(<%= Url.Action("Delete""Account",new { id="xx-xx-xxx" }) %>
2     function(result) {
3         if (result.success) {
4             //通过脚本移除此行
5             alert("删除成功!")    
6         } 
7     });

4.扩展htmlHelper,方便在view中调用后台代码。
步骤 1)创建静态类 HtmlHelperExtension。
       2)引入 System.Web.Mvc 。
       3)创建需要的方法,例如:

1 public static string FirstExtension(this HtmlHelper htmlHelper)
2 {
3     return "FirstExtension";
4 }

      4)在view中引入HtmlHelperExtension所在的命名空间(一定不要忘,我忘了很多次)
      5)在view中使用,例如 <%= Html.FirstExtension() %>

[模板]Getting Start With NVelocity

mikel阅读(771)

NVelocityjava velocityC#实现,目前我在CodePlex维护着与Velocity同步的版本。NVelocity也在项目中使用着,在社区也有国外开发者的一些反馈。

 下面是一个在ASP.NET如何使用NVelocity的非常简单例子:

 定义HttpHandler:


 1namespace NVelocity.TestWebsite
 2{
 3    using System;
 4    using System.Collections.Generic;
 5    using System.IO;
 6    using System.Web;
 7
 8    using Commons.Collections;
 9
10    using NVelocity.App;
11    using NVelocity.Context;
12    using NVelocity.Runtime;
13
14    /// <summary>
15    /// 
16    /// </summary>

17    public class NVelocityHandler : IHttpHandler
18    {
19        #region IHttpHandler Members
20
21        public bool IsReusable
22        {
23            get return false; }
24        }

25
26        public void ProcessRequest(HttpContext context)
27        {
28            VelocityEngine velocity = new VelocityEngine();
29
30            ExtendedProperties props = new ExtendedProperties();
31
32            //定义模板路径
33            props.SetProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Views"));
34
35            //初始化
36            velocity.Init(props);
37
38            List<City> list = new List<City>();
39
40            list.Add(new City() { Name = "sh", Id = 21 });
41            list.Add(new City() { Name = "bj", Id = 22 });
42            list.Add(new City() { Name = "tj", Id = 23 });
43
44
45            IContext c = new VelocityContext();
46
47            //添加到上下文中
48            c.Put("cities", list);
49
50            //根据请求输出
51            velocity.MergeTemplate(context.Request.QueryString["vm"+ ".vm""UTF-8", c, context.Response.Output);
52        }

53
54        #endregion

55    }

56
57    /// <summary>
58    /// 城市
59    /// </summary>

60    public class City
61    {
62        /// <summary>
63        /// ID
64        /// </summary>

65        public int Id getset; }
66
67        /// <summary>
68        /// 名称
69        /// </summary>

70        public string Name getset; }
71    }

72}

73

 一个用于测试的default.vm模板文件:


1##循环输出
2#foreach($city in $cities)
3Id:$city.id<br />
4城市名称:$city.name<br />
5#end
6##索引获取数据
7$cities.get_item(2).name
8

 在Web.config中配置上面定义的HttpHandler:


<httpHandlers>
            
<add verb="*" path="*.page" type="NVelocity.TestWebsite.NVelocityHandler,NVelocity.TestWebsite"/>
        
</httpHandlers>

 请求及输出效果:

 

[Python]Python视频教程

mikel阅读(724)

第1讲 Python概述:http://rzchina.net/node/11792
第2讲 基本语法:http://rzchina.net/node/11793
第3讲 控制语句:http://rzchina.net/node/11794
第4讲 内置数据结构:http://rzchina.net/node/11795
第5讲 模块与函数:http://rzchina.net/node/11807
第6讲 字符串与正则表达式:http://rzchina.net/node/11796
第7讲 文件的处理:http://rzchina.net/node/11797
第8讲 面向对象编程:http://rzchina.net/node/11798
第9讲 异常处理与程序调试:http://rzchina.net/node/11799
第10讲 Python 数据库编程:http://rzchina.net/node/11800
第11讲 WxPython的开发环境:http://rzchina.net/node/11801
第12讲 WxPython框架初步:http://rzchina.net/node/11802
第13讲 基本组件:http://rzchina.net/node/11803
第14讲 菜单、窗口与对话框:http://rzchina.net/node/11804
第15讲 高级控件:http://rzchina.net/node/11805
第16讲 WxPython下的高级功能:http://rzchina.net/node/11806
第17讲 Python的HTML应用:http://rzchina.net/node/11808
第18讲 Python和XML:http://rzchina.net/node/11809
第19讲 Python的Web开发——Django框架的应用:http://rzchina.net/node/11810
第20讲 敏捷方法学在Python中的应用——测试驱动开发:http://rzchina.net/node/11811
第21讲 Python中进程和线程:http://rzchina.net/node/11812
第22讲 基于Python的系统管理:http://rzchina.net/node/11813
第23讲 Python和网络编程:http://rzchina.net/node/11814
第25讲 图像处理和游戏开发:http://rzchina.net/node/11815
第26讲 Python语言的扩展与嵌入:http://rzchina.net/node/11816
第27讲 Windows下的Python:http://rzchina.net/node/11817

[Flex]flex 与asp.net 配合之道

mikel阅读(720)

1.将flex编译后的程序插入到ASP.NET页面
flex的最终输出就是一张网页+一个flash(.swf文件)
就是用他生成的网页的方式把那个.swf文件插入ASP.NET页面就可以了。
flex3项目名字叫TestApp,最简单直接的办法就是,
把"bin-Debug"目录下的:
TestApp.html
TestApp.swf
AC_OETags.js
playerProductInstall.swf
这4个文件复制到ASP.NET网站下面,打开TestApp.html,把内容复制到asp.net程序页面(.aspx文件)中。
比如Default.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
//把TestApp.html的内容全部复制到这里
//….
//…
总而言之FLEX3最后编译成了一个.swf文件而已,这个文件在网站里面插入的方法和普通的flash动画的那种.swf文件的使用方法是一样的。
还有其他的要求:flex3程序和网页还有交互,请用"flex externalinterface"搜索
2.flex程序与asp.net程序交互
可以使用flex的Loader往asp.net发送请求,获取xml。
也可以使用ExternalInterface和网页中的js交互,让js发送ajax请求到asp.net。
下面有一实例,目标是:在flex端将数据Post到asp.net页面中,并将返回的xml数据显示出来

//Asp.net端代码
//getxml.aspx代码,保留一行即可,删除其他的html代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="getxml.aspx.cs" Inherits="getxml" %>

//getxml.aspx.cs
//using System…
using System.Xml;
public partial class getxml : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string user_pkid = System.Web.HttpContext.Current.Request.Form["user_pkid"];
        if user_pkid != null)
        {
             CreateXml();//创建Xml的方法,可使用XmlTextWriter、XmlDocument ,或者直接读取Xml文件等待
        }
    }

    private void CreateXml()
    {
        XmlDocument doc = new XmlDocument();
        XmlNode root = doc.CreateElement("channel");

        XmlElement titleElm = doc.CreateElement("title");
        titleElm.InnerText = "blogweather";

        //…
   
        root.AppendChild(titleElm);
        doc.AppendChild(root);

        XmlTextWriter xw = new XmlTextWriter(Response.OutputStream,System.Text.Encoding.UTF8);//写到页面返回值中
        xw.Formatting = Formatting.Indented;//将Xml格式化
        doc.Save(xw);
        xw.Flush();
        xw.Close();
    }
}

Xml数据如下:
<?xml version="1.0" encoding="UTF-8" ?>
<channel>
    <title>blogweather</title>
    <link>http://www.blogweather.net</link>
    <description>博客天气预报</description>
</channel>

方法一:
如果所有值均在xml数据中,而且不需要拿这些数据做二次分析,则推荐使用 HTTPService控件

Flex 端代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="init()" >
 <mx:Script>
  <![CDATA[
   import mx.messaging.AbstractConsumer;
   import flash.events.MouseEvent;
   import mx.controls.Alert;
      
   private function init():void
   {
    getxml.url = "http://www.blogweather.net/getxml.aspx"; //接收Post方法的页面
    var data:Object = new Object();
    data["user_pkid"] = this.parameters.user_pkid;
    getxml.send(data);
   }
            ]]>
 </mx:Script>
 <mx:HTTPService id="getxml" showBusyCursor="true" useProxy="false" method="POST">
 </mx:HTTPService>
 <mx:TextArea  wordWrap="true" editable="false" enabled="true" id="lb_title">
  <mx:text>{getxml.lastResult.channel.title}</mx:text>
 </mx:TextArea>
</mx:Application>

方法二:
如果要将数据进行分析,则要使用URLLoader和URLRequest
Flex 端代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="init();">
 <mx:Script>
  <![CDATA[
   import mx.messaging.AbstractConsumer;
   import mx.messaging.channels.StreamingAMFChannel;
   import flash.events.MouseEvent;
   import mx.controls.Alert;
      
             public var myLoader:URLLoader = new URLLoader();
             public var myRequest:URLRequest;
             public var user_pkid:String;

   private function init():void
   {
    var http://www.cnblogs.com/glaivelee/admin/String = "http://www.blogweather.net/getxml.aspx";
    myRequest = new URLRequest(url);
    myRequest.method = URLRequestMethod.POST;
    var data:URLVariables = new URLVariables();
    //接收来自flash的参数调用,比如flash文件为 loadxml.swf,带参数 loadxml.swf?user_pkid=10001
    data.user_pkid = this.parameters.user_pkid; // 获取10001
    myRequest.data = data;
    myLoader.load(myRequest);
    myLoader.addEventListener(Event.COMPLETE,onLoadComplete);
   }
   
   private function onLoadComplete(event:Event):void
   {
    var myxml:XML;
    var loader:URLLoader = URLLoader(event.target);
    myxml = new XML(loader.data);
    
    lb_title.text =myxml.child("channel")[0].child("title");
    if( lb_title.text == "blogweather")
    {
     Alert("页面名称为:博客天气预报");
    }
   }
   
  ]]>
 </mx:Script>
 <mx:TextArea  wordWrap="true" editable="false" enabled="true" id="lb_title">
  <mx:text>lb_title</mx:text>
 </mx:TextArea>
</mx:Application>

[ORM]NHibernate之旅系列文章导航

mikel阅读(919)

宣传语

NHibernate、NHibernate教程、NHibernate入门、NHibernate下载、NHibernate教程中文版、 NHibernate实例、NHibernate2.0、NHibernate2.0教程、NHibernate之旅、NHibernate工具

导游

NHibernate是把Java的Hibernate核心部分移植到Microsoft .NET Framework上。它是一个对象关系映射工具,其目标是把.NET对象持久化到关系数据库。

NHibernate在2008年8月31日发布了NHibernate2.0版本,代表NHibernate又向前走了一步,我相信 NHibernate将会越来越强大。唯一的遗憾是现在NHibernate对泛型的支持有点不足,源于Java中的泛型是编译时“搽拭法” 泛型不是真正的泛型,如果NHibernate添加上自己独特的功能——泛型,那么更为强大了很多。

这个NHibernate之旅系列带你来到NHibernate的世界。一步一步看清NHibernate中的种种细节。

环境优先

这次NHibernate2.0系列之旅使用Microsoft Visual Studio 2008 SP1、SQL Server 2008 Express、NHibernate2.0最新环境,非常舒适。不过你可以到这里获得NHibernate最新版本, 这里获得NHibernate Contrib最新版本。

休息接待区

欢迎加入NHibernate中文社区!在讨论中寻找乐趣!在问题中寻找答案!

请转向:http://space.cnblogs.com/group/NHibernate!全程接待!期待你的NHibernate中文社区之旅!

旅途站点路线

第一站:鸟瞰NHibernate

NHibernate之旅(1):开篇有益

第二站:接触NHibernate

NHibernate之旅(2):第一个NHibernate程序

第三站:数据在我手中

NHibernate之旅(3):探索查询之NHibernate查询语言(HQL)

NHibernate之旅(4):探索查询之条件查询(Criteria Query)

NHibernate之旅(5):探索Insert, Update, Delete操作

第四站:控制你的全部

NHibernate之旅(6):探索NHibernate中的事务

NHibernate之旅(7):初探NHibernate中的并发控制

观光站:实用技巧补偿

NHibernate之旅(8):巧用组件之依赖对象

第五站:关系如此复杂

NHibernate之旅(9):探索父子关系(一对多关系)

NHibernate之旅(10):探索父子(一对多)关联查询

NHibernate之旅(11):探索多对多关系及其关联查询

第六站:我来加载你

NHibernate之旅(12):初探延迟加载机制

NHibernate之旅(13):初探立即加载机制

第七站:数据的镜子

NHibernate之旅(14):探索NHibernate中使用视图(new!)

NHibernate之旅(15):探索NHibernate中使用存储过程(上)(new!)

NHibernate之旅(16):探索NHibernate中使用存储过程(中)(new!)

NHibernate之旅(17):探索NHibernate中使用存储过程(下)(new!)

第八站:转载请注明

NHibernate之旅(18):初探代码生成工具使用(new!)

NHibernate之旅(19):初探SchemaExport工具使用(new!)

NHibernate之旅(20):再探SchemaExport工具使用(new!)

下一站:停靠在哪儿

NHibernate之旅(21):探索对象状态(new!)

NHibernate之旅(22):探索NHibernate一级缓存(new!)

NHibernate之旅(23):探索NHibernate二级缓存(上)(new!)

NHibernate之旅(24):探索NHibernate二级缓存(下)(new!)

……期待更新……

最终站:旅途更新中

最后宣传

期待这次旅途愉快!一路顺风!期待你的再次光临!下一站我们去哪儿?

作者:李永京YJingLee's Blog
出处:http://lyj.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。