FF2上不能安装的问题一般都比较常见,网上较多介绍。
这里提供一个:
http://blog.joycode.com/soma/archive/2007/09/06/108074.aspx
注意留言
需要严格按照提示进行安装,该重启就重启,不行就覆盖安装Firefox。
我和你的情况恰恰相反了,IE6上可以,FF2上不可以。请教一下?
学习了,也遇到这样的问题,害得我重装SL好几回,以为版本不对。
这个帖子好久没有人回了,能讨论一下挺好
@Artech
你找找前边的回帖,我在前边还说过“其实,我也有个前提,做的一些项目都是小系统,在局域网内运行,一个站点跑一个Xeon的Server。我何苦折磨自己去讨好Xeon呢?麻烦?谁麻烦?我们麻烦还是机器麻烦?机器麻烦?干吗不麻烦它?几个G的脑瓜天天在那儿傻着!
对于Large-scale网站,我才不会用这个”
我是这个意思,你可能没有看到:)
@Ariel Y
首先我对你想到这样一个解决方案,在技术上看,值得学习。
如果我否认“提高生产力”,那我真的应该被你送到“农耕女织的时代”,呵呵!
“生产力的提升都是以保证质量甚至提高质量为基本的。我以上所列没有违背这些。”我想每个人都会认同。
但是“让机器多干点”,意味之你在多耗用CPU,你在影响性能,在降低质量而非提高质量。
一个项目是否具有价值,体现在客户是否认可,商业社会,这是真理。你做的东西,用起来可能还用,但是它对性能的影响看来,我觉得不是一个很好的解决方案。
我很赞成敏捷开发,敏捷开发也是大势所趋,而我本人也经常做一些“提高生产效率”开发。但是在这点上我们不能盲目,一定要在牺牲性能,和提高提高生产力之间取得一个折中,而这种权衡确实很难。从这里考虑,我觉得这样做不值得。
@Artech
我这个东西没有说给客户看啊?客户才不关心。甲方关心的是他们的钱怎么样实现最大的价值。同样也是乙方关心的,怎么样才能最节省成本。当然,都是保证质量的情况下。
我所介绍的东西正是提高了生产力,提升了甲乙双方的价值。
我写这个东西的目的你没有明白,不是在显示代码多精炼,设计多好,也不是给客户看我们技术多优秀,而是要提高生产力,让机器多干点就是为了在保证质量的情况下提高生产力。
如果你对“提高生产力”这一点也否认,那就是否认了现代工业社会的一切科技进步。那就回到农耕女织的时代去吧。
最后再强调一点,生产力的提升都是以保证质量甚至提高质量为基本的。我以上所列没有违背这些。不知道你怎么理解的。
楼主说“让机器多干点,人少干点,没错吧?”
这句话我极不赞同。我想问一句,我们的Application是给说用的,我们的客户看中的是什么?客户不好看你代码有多精练,设计有多好了。它最终看的是功能的实现,界面的友好,性能的优越。
我觉得这句话应该改过来,我们有时候让自己多干点,让机器少干点。
最新版的应该可以吧, 我用那个时候, T628就是最新的手机.
现在已经改用Windows Mobile了
有趣~这软件支持K700吗?可否制作那种“主页”包括动画的Theme?
很早碰到过。解决办法是再新建一个连接池就行了。一个运行1.1的程序,一个2.0的
呵呵。。这么一大堆我不太明白@我来这里是谢谢你的:)。。
啊... 难道是版本太新的问题吗? 我1.7, 1.8和1.9都用过, 都打不开
当然解压缩了, 我是打开THM文件的时候Themes Creator提示Invalid checksum的错误信息
能不能把鼠标特殊效果撤销掉了……
实在是难受,看得时候……
呵呵
对于文章,就没有什么好说的了,确实不错~~
re: 一行代码搞定你的QueryString!(原创) Stanley Liu 2006-01-20 15:10
搞明白自定义属性了,happying
谢谢Ariel Y. ~
看了高人的文章.
自己感觉还有很多要学习。.
努力!~
@sema
您的名字让我想起一句广告:“穿什么,就是什么”:)
楼上吓我一身汗,跟我的好像!我可是干巴巴想出来的,呵呵。
不过我喜欢这种说法:“但是实际对效率的影响的确需要评估”,而不是有些人(没有特指,请勿对号入座,真的):“效率很差,效率不高”。
知道读数据DataReader比DataAdpater+DataSet快多少吗?总有人说快好多,实际的评测结果好像是14%-18%(参考自“DEV411 ASP.NET: Best Practices For Performance - Stephen Walther www.SuperexpertTraining.com - TechEd 2004”)
@zhxp
OO means Object-Oriented Programming Concepts
@木野狐
哦,才发现,确实,从OO的角度讲,确实有污染,谢谢指正!
@双鱼座
不好意思啦。
楼主的出发点很好,从技术的角度讲也是一种很有益的练习,不过双鱼座所说的“污染”其实只是从 OO 思想的角度来讲的,并没有任何贬低的意思啊。还望楼主不要误解了。常常我们会说“污染”一个名称空间之类的说法,其实说的不过是某个类,或者某个名称空间下干了比它应有的职责更多的事情而已,呵呵。
关于我的回复,昨天回复完后,也贴到自己的 blog 上去了:
http://rchen.cnblogs.com/archive/2006/01/16/318561.html
根据 stone790809 网友的建议,我现在已经改进了做法,不再传递 Page 类作为参数了,这个跟你的建议是一致的 :)
其实并非我不知道 HttpContext.Current.Request 这个用法,只是平常传递 Page 对象传惯了,写成了惯性而已,呵呵。
@各位
有人说这方法画蛇添足,有人说麻烦有,人说污染,有人说小题大做。我的想法呢,很简单,前边已经说过,我是为了少写代码,越少越好,呵呵。让机器多干点,人少干点,没错吧?其实,我也有个前提,做的一些项目都是小系统,在局域网内运行,一个站点跑一个Xeon的Server。我何苦折磨自己去讨好Xeon呢?麻烦?谁麻烦?我们麻烦还是机器麻烦?机器麻烦?干吗不麻烦它?几个G的脑瓜天天在那儿傻着!
对于Large-scale网站,我才不会用这个,性能即过程!
这么多高人关注,谢谢,呵呵。下边的言语如果多有得罪,还请见谅!
@lee_j
第一点,我和你想的一样,但是我不会,能指点一下吗?在Attribute里可以读到被它绑定的对象吗?我没找到方法。
第二点,没明白你的意思,Interface来做什么?但是好像对于我这篇文章就跑题了,我这篇文章叫一行代码搞定QueryString,呵呵。
请指教!
@木野狐
你这类代码的思想,正是我现在用的。不过我觉得完全没有必要传那个Page进去,用HttpContext.Current.Request.QueryString[]就可以读了
而且现在我有两种实现,一个是你这种Utility类,一种更OO的方法是自己实现一个QueryString类作为Page基类的成员,用的时候:this.QueryString.GetInt32(......);
@双鱼座
你的文章我很喜欢,但是先说一句得罪了!我有些出离愤怒了!
第一,怎么就叫代价大了?怎么就小了?
第二,必须定义一个Feild..............................。难道其他方式不用定义变量吗?其他方式不更是要写代码吗?其他方式不需要与QueryString键字符串相吻合吗?难道一行代码都不用写就让我实现吗?我可做不到:(
为什么你的污染就值?怎么污染就不值?太主观了吧?我地孩儿也是孩儿啊,555555。
@Terrylee & All
其实我这篇文章讨论的问题真是芝麻绿豆大点子的事儿,纯属是玩些技术把戏,我也就是写着玩儿玩儿。但是真的写好了,并且简单好用,何乐而不用呢?
楼主的设计思想很好……
可是为了QueryString花这么大的代价,值得吗?
呵呵,这种方式与我从前做权限控制的方式几乎一样,用来处理QueryString的确小题大作了一点。两处缺陷:一是污染了Page类的代价太大了一点(自然木野孤的方案清洁一点);二是必须定义一个Field并且要加上自定义标签并且要与QueryString键字符串相吻合。
我在控制权限的时候,那个自定义标签是抽象的,加在Page固有的Field上(通常是页面中静态的Control),对于不同的Control根本不同的权限采取不同的策略进行不同的处理,具有充分的可扩充性,这样污染Page类就物有所值。
我认为这种实现方法过于麻烦。我的实现通常都是这样的:
在一个公共的方法类里面这样写,
public class Util {
private Util() {}
// 从 querystring 集合中安全的取得一个 string. (总是不会有 null,所以叫做 'Safe')
public static string GetStringSafeFromQueryString(Page page, string key) {
string value = page.Request.QueryString[key];
return (value == null) ? string.Empty : value;
}
// 在上述基础上,实现几个常用类型的获取方法。
public static int GetInt32SafeFromQueryString(Page page, string key, int defaultValue) {
string value = GetStringSafeFromQueryString(page, key);
int i = defaultValue;
try {
i = int.Parse(value);
} catch {}
return i;
}
// double 的实现
public static double GetDoubleSafeFromQueryString(Page page,
string key, double defaultValue) {
string value = GetStringSafeFromQueryString(page, key);
double d = defaultValue;
try {
d = double.Parse(value);
} catch {}
return d;
}
// 同理可以写出 float, ... 的实现
}
在我的任何页面里面,要获取 querystring 的时候,只要这样就可以了:
比如我要获取一个 string:
string name = Util.GetStringSafeFromQueryString(this, "name");
if (name.Length > 0) {
// 进行正常的处理...
} else {
// 不处理。
}
获取 int:
int id = Util.GetInt32SafeFromQueryString(this, "id", 0);
处理 double, float 等等方法完全一样。
我认为就一个 QueryString 的处理没必要上升到反射的高度,其实有时候反过来想想,实现的那么复杂也许会丧失一定的灵活性。比如我某个值忽然要改为从 Form 里面得到呢?从 Session 得到呢?这时候就可以比较出哪种做法更适合敏捷的适应需求。
页面里的 QueryString 的处理,之所以大家都很痛恨手工写编码,无非是因为这么几点:
1. 需要判断是否 == null 才敢用 .ToString(), 很不爽。稍微不注意,就会抛出异常导致页面错误。
2. 整形,double 等值类型从 QueryString 里面获取的时候,不知道是否为合法的数值,因此 Parse 的时候总是要写重复的处理异常的代码。
归纳一下,其实,一个页面用下列语法获取一个 QueryString 的时候,他得到的是如下东西:
(假设用 string name = Request.QueryString["name"]; 来获取。)
1. ...test.aspx 得到 null
2. ...test.aspx?name= 得到 ""
3. ...test.aspx?name=abc 得到 "abc"
我认为 1 和 2 的情况实际上从程序处理上来讲,是没有区别的。因此判断 null 没有必要,我们每次都将 null 的值自动让他转为 string.Empty 应该是比较安全的做法。
基于上述理由,我觉得如我上面所写的简单的工具类,就可以轻量级的解决安全的读取 QueryString 的问题。
有不对的地方,请大家多多指教。
我看完楼主的代码后,发现从设计上有一个失误.PageBase类是实现代码复用的关键,而用自定义Atribute反而有画蛇添足的感觉.正如楼主所说利用反射机制令代码的效率降低.
我想有两种方法去改进
1.把PageBase的SetField功能移到HttpRequestStringAttribute类中;
2.不用自动义Attribute,改成Interface.PageBase去实现Interface,而不用反射机制.
我这段代码可以省去以后在页面里处理Query String的代码。
比如以前写:
public Guid userId;
public int count;
public void Page_Load()
{
try
{
userId = new Guid(Request.QueryString["UserId"].ToString());
}
catch
{
throw new Exception();
}
if(Request.QueryString["Count"] == null || Request.QueryString["Count"].ToSTring() = string.Empty)
{
count = 0;
}
else
{
try
{
count = Convert.ToInt32(Request.QueryString["Count"].ToString());
}
catch
{
throw new Exception();
}
}
}
现在只要写:
[HttpQueryString("UserId")]
public Guid userId; // 这里的字段不能是private的。
[HttpQueryString("Count", 0)]
public int count; // 这里的字段不能是private的。
就可以了。
难道你只看到了类型转换?
怎么说也是根据定义的变量的数据类型自动转换对应的QueryString吧?呵呵。
我觉得“有这个必要写这么长的代码吗?”这种思想是很有害的一种想法。
假设我这个代码有100行,我一次就写这么多了,以后每次就只有几行。如果不这么干(我是说,不提炼一些东西出来),你每页都要写,假设20行,你写一个项目我想也不仅仅只有5个页面吧?你看,做一个项目我就比你快:)
就像我开头说的,做一些枯燥重复的开发是没有意义的。永远是软件工人。
终于学习到怎么用自定义属性了!
可我还是不太明白你这些代码要完成的功能是什么?
难道就是简单的类型转换吗?
有这个必要写这么长的代码吗?
re: 一行代码搞定你的QueryString!(原创) mkimtaehee 2006-01-16 14:15
不懂,未来应该要学习的。(最近到处听说动态类构造啊,反射什么的)
我的技术还停留在WINFROM的数据库 增删改查 真觉得自己低级 汗~~~~~~~~~~~~~~~~~~~~~
@kwklover
谢谢你的意见,确实应该写清楚的。
我没有注明,应该是通用的:)因为没有用到什么.net 2.0的新特性,不过我确实是在VS 2005里写的。
好处么,应该是方便吧,减少我们的代码量,脱离一部分枯燥重复的Coding。
坏处么,应该是性能问题吧,但是我也不知道用反射会对性能造成多大影响,有时间测试一下;这里还希望高手指点一下性能的影响。
好多朋友说看不懂:(其实本来这篇文章就不是什么入门文章,也不是学习新知识,只是介绍我的一个思路,没有教大家写代码。所以,没有做过多解释。注释已经写的很清楚了。
提两个问题:
1,写.net的文章,是否应该注明适用于.net2.0还是.net1.x,毕竟.net发展已经5年多了,平台版本之间具有一定差异性 ?
2,是否应该说明这种方法有什么好处和坏处 ?
感谢!
在网上找了好久没找着,后来就用2台服务器,一台用1.1另一台装2.0。
麻烦死了
@rexsp
我也是这么想的,可是我不知道GetFields应该传什么参数才能得到只加载了自定义的Attribute的Field。能指教一下用哪个BindingFlags枚举吗?
// Get all fields of current page class.
FieldInfo[] fields = type.GetFields();
感觉没有必要把所有的栏位读出来循环,只读那些加载了自定义的Attribute的就好了吧
@DERUEI
只支持波形文件的放音,不支持铃声
@飞扬
蓝牙和红外也可以,推荐你一个软件:
http://fma.sourceforge.net/
@kopie
不能吧,你解压缩了吗?
@韩
台式机一般没有红外接口,笔记本一般都有。直接把下载的文件发送到手机上就可以。
@杨瑞
不能,很遗憾:(但是纠正你一个错误,本机的铃声和彩铃不是一个概念,你可以打1860问问,呵呵。
前不久,我买了部sony Ericsson T628不知道怎么回事,我的电池只能用一天多
说明不是写了能保持312个小时吗,但事实怎么才这么少啊,而且我想知道这款手机
能不能下载原声的音乐作为彩铃,如果有谁知道的话就留个言,我在这里先说谢谢了
我的手机里的游戏不是很好玩,我想在网上下载,不知道电脑的红外线的接头在什么地方,并怎么下载它
我下载了你做的主题, 可是无论是手机还是Sony Ericsson Themes Creator都打不开, 不知道是什么问题呢?
我不久前买了一款Sony Ericsson T628 ,不知如何将电脑中的图片下载到手机上(或手机上传),不知连结是否一定要配置数据线?不是有蓝牙和红外线吗?如果你知道请与我联系!谢谢!我的邮箱是
xyqwfy@126.com
不知道你说的原唱铃声的意思,是不是指波形文件而不是MIDI?应该是支持播放,但是不支持作为铃声:(
不知道 T628 是否 支持 原唱铃声 如能 麻烦谁能给个 地址
我的是标准的T628,所以不好回答你了,你自己做一个试试先~
突然发现...下载的那个THEME不能在我的T630改的T628上用,不知道为什么,请指教
很漂亮的THEME啊...向Ariel同志学习,我正在下载那个Creator,我也要回去做几个THEME,我要做个MediaCenter的,呵呵。