当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP+学习笔记(四)

ASP
ASP编程入门进阶(十二):ASP技巧累加(一)
ASP编程入门进阶(十三):Ad & Content Rotator
ASP编程入门进阶(十四):Browser & Linking
ASP编程入门进阶(十五):组件Counters
一些简单的ASP练习
ASP编程入门进阶(十六):FSO组件之驱动器操作
ASP编程入门进阶(十七):FSO组件之文件夹操作
ASP编程入门进阶(十八):FSO组件之文件操作(上)
ASP编程入门进阶(十八):FSO组件之文件操作(中)
ASP编程入门进阶(十八):FSO组件之文件操作(下)
ASP编程入门进阶(十九):ASP技巧累加(二)
ASP中有关双引号,单引号以及&号的解释
ASP编程入门进阶(二十):ADO组件之显示数据记录
ASP编程入门进阶(二十):ADO组件之插入数据记录
ASP编程入门进阶(二十):ADO组件之分页程序
ASP编程入门进阶(二十):ADO组件之修改数据记录
ASP编程入门进阶(二十):ADO组件之删除数据记录
ASP初学者常犯的几个错误(ZT)
无组件上传图片之文件采用方案
ASP编程入门进阶(二十):ADO组件之查询数据记录

ASP+学习笔记(四)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 221 ::
收藏到网摘: n/a

  五、asp+ MyWeb 应用
    
1).概述
    MyWeb是ASP+中的一门新技术,允许一个ASP+应用在没有WEB服务器的机器上运行,实际在
IE内部运行,可以离线地运行。开发上与服务器端的应用开发无异。
    让客户可以在需要时进行安装,这叫demand install。
    当用户访问一个MYWEB应用时,ASP+首先试图从本地找到这个应用,如果找不到,则从
myweb:URL处下载应用说明(manifest),如果成功,则下载整个应用并安装到本地。
    myweb在NGWS运行环境中执行(所以,客户端必须安装NGWS运行时库),可以访问独立的
存储系统,同时,可以建立到原来安装这个应用的站点的连接。他们不能访问本地机上的资源,
以及部分COM的调用(这有点类似于JAVA中的APPLET)。
    
2).myweb管理工具
    如果安装了IE55,并且安装了NGWS运行时环境,则可以从浏览器工具条上选择"myweb"按扭,
(位置在工具条的最后,就像安装了金山词霸后增加的那个工具一样),或者也可以直接在浏览
器的地址栏里输入 myweb:// ,就可以进入MYWEB管理工具。
    存在两种类型的myweb应用,一是Remote的,二是Local的。
    可以用管理工具新安装一个myweb应用,或者直接从浏览器地址栏里输入myweb的URL,后一
种情况下,如果已经安装了这个myweb应用,则将直接启动该应用。
    
3).开发myweb应用
    跟开发一个ASP+服务器应用类似,最后需要一个CAB文件,用实用工具cabarc.exe生成,如:
    cabarc -p -r n myweb.cab *.aspx *.html *.jpg *.css *.dll *.web
    manifest文件是OSD(Open Software Description)格式,名为myweb.osd,一个例子:
    
    <softpkg name="Demo1" version="1.0">
        <implementation>
            <codebase href="http://somewhere.com/myweb.cab">
        </implementation>
        <homepage>myweb://somewhere.com/default.aspx</homepage>
        <Iconurl>myweb://somewhere.coom/icon.gif</Iconurl>
        <RemoteIconurl>http://somewhere.com/icon.gif</RemoteIconurl>
        <Author>white</Author>
        <Source> Beijing 123okey.Inc</Source>
        <size>3000</size>
    </softpkg>
    
4).略
5).独立存储空间
    myweb不能访问本地文件系统,但可以访问由GNWS提供的独立存储空间(IsolatedStorage),
就像访问本地文件一样,例:
    
    //读取数据
    String _storeFile="mystore";
    ArrayList values=new ArrayList();
    IsolatedStorageFileStream stream = null;
    try{
        stream = new IsolatedStorageFileStream(_storeFile,FileMode.Open);
    }catch(Exception e){}
    if(null!=stream){
        values=(ArrayList)BinarySerializer.DeSerialize(stream);
        stream.Close();
        }
    
    //保存数据
    IsolatedStorageFileStream stream;
    stream = new IsolatedStorageFileStream(_stroeFile,FileMode.OpenOrCreate);
    ArrayList values = new ArrayList();
    values.Add("test1");
    ......
    BinarySerializer.Serializer(