作者归档 孟繁永

通过孟繁永

二维码也不要滥用

       手机二维码在新闻出版上有了一些应用,但就个人观点,二维码在出版行业实际上有些多余,出版物都有统一的ISDN号,再另外给书一个二维码实属多余。比如二维码应用的一段描述:

       用手机扫描书后面的二维码,即登录到手机WAP网站上,读取出版社的图书目录,还可以点击其中的一本书,阅读这本书简介,或者某些章节。而且如果想购买,还可以在网上下载优惠券。

       这些东西扫描ISDN和条码一样可以实现,而考虑他的实用性,读者在书店买书,看到一本书,翻开就可以直接浏览,没有必要登录网站去看简介,有些精装书(封闭,不可预览)除外。而如果说登录豆瓣查看相关评论或者比价信息倒是可行。关于优惠券,如果可以优惠,直接夹到书里就行了,有些互联网公司这么做无非就是想让读者到网站注册,套取用户信息。

       其实对于出版社来讲,手机上的应用,还是以内容提供为主,读者可以发送ISDN号来获取电子书,或者获取配套的手机视频等等。

通过孟繁永

如何使用gmail发送邮件

using System.Web.Mail;

    // Mail initialization
MailMessage mailMsg = new MailMessage();
mailMsg.From = "test@test.com";
mailMsg.To = "desti@126.com";
//mailMsg.Cc = cc;
//mailMsg.Bcc = bcc;
mailMsg.Subject = "send mail use gmail";
mailMsg.BodyFormat = MailFormat.Text;
mailMsg.Body = "Hello here comes the sun";
mailMsg.Priority = MailPriority.High;
// Smtp configuration
SmtpMail.SmtpServer = "smtp.gmail.com";
// – smtp.gmail.com use smtp authentication
mailMsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
mailMsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "yourgmailaddress");
mailMsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "youpassword");
// – smtp.gmail.com use port 465 or 587
mailMsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "465");
// – smtp.gmail.com use STARTTLS (some call this SSL)
mailMsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true");
// try to send Mail
try
{
     SmtpMail.Send(mailMsg);
     Response.Write("send success");
}
catch (Exception ex)
{
     Response.Write(ex.Message);
}

转自:http://www.cnblogs.com/sunbingzibo/archive/2008/03/07/1094831.html

找dotnet的资料还是上csdn和cnblogs,在这里看到算你幸运,放心吧,2008年3月10日20点54分发送到126邮箱成功。

注意:G官方限制一天内同一封邮件最多发送到500个联系人。

以上代码符合.net1.1规范,2.0的代码如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Mail;
using System.Net;

namespace Artech.Mail.ConsoleApp
{
    
class Program
    
{

        const string ADDRESS_FROM = "from@gail.com";
        
const string ADDRESS_TO = "to@gmail.com";
        
const string USER_ID = "MyAccount";
        
const string PASSWORD = "password";
        
const string SMTP_SERVER = "smtp.gmail.com";
        
const int PORT = 587;

        
static void Main(string[] args)
        
{

                 SendMail(SMTP_SERVER, PORT);
                 Console.Read();        
           
         }

        
static void SendMail(string smtpServer, int port)

        {
             SmtpClient mailClient
= new SmtpClient(smtpServer, 587);
             mailClient.EnableSsl
= true;
             NetworkCredential crendetial
= new NetworkCredential(USER_ID, PASSWORD);

             mailClient.Credentials = crendetial;
             MailMessage message
= new MailMessage(ADDRESS_FROM, ADDRESS_TO, "This is a subject", "This is the body of the mail");
           
             mailClient.Send(message);
             Console.WriteLine(
"Mail has been sent to ‘{0}’", ADDRESS_TO);
         }

     }

}

熟悉System.Net.Mail. SmtpClient,对上面的Code应该是很熟悉了,在这里我就不想对上面的逻辑多做介绍了。不过我需要补充几点的是:

1.通过Gmail,你只能以你登录到SMTP Server的Account的名义对外发信,以上面为例,我以” MyAccount”最为Gmail的Account登录,向Email address 为to@gmail.com发送邮件,虽然在SmtpClient.Send方法中的我指定的From address为from@gail.com,当收信人受到该邮件的时候,邮件的发件人是MyAccount@gail.com,不会为from@gail.com。这些很有必要的,可以防止你利用别人的名义发送邮件。这种机制并不是通用的,我就和同事开过这样的玩笑:通过公司的STMP Server以另一个同事的名义向他发邮件。

2.虽然Google对外宣称他们开发的SMTP Server的Port为25,465和587,但是在代码中,我使用25和587一切正常,当时当我使用465的时候,怎么也发不出去。但是当我在Outlook中把Port配置为465的时候,发送邮件也正常。我还没来得及查阅到底是什么问题。知道原因的朋友,请不吝赐教。

3.对于像这种邮件服务功能的代码,我们一般写成可配置的。因为对于对于帐户和密码,甚至是STMP Server,都有可能经常的变换。但是我们不用通过常用的<AppSettings>来配置,也不用定义我们的Custom ConfigurationSection。因为Configuration System已经为我们定义的内置的<mailSettings>来配置邮件相关的信息。比如:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  
<system.net>
    
<mailSettings>
      
<smtp from="MyAccount@gmail.com">
        
<network host="smtp.gmail.com"
                  password
="password"
                  port
="587"
                  userName
=" MyAccount @gmail.com"/>
      
</smtp>
    
</mailSettings>
  
</system.net>
</configuration>

对于Gmail,from实际上没有什么意义。

现在我们就可以进一步地简化我们的Managed code了:

static void SendMail()
        
{

             SmtpClient mailClient = new SmtpClient();
             mailClient.EnableSsl
= true;
             MailMessage message
= new MailMessage(ADDRESS_FROM, ADDRESS_TO, "This is a subject", "This is the body of the mail");


             mailClient.Send(message);
             Console.WriteLine("Mail has been sent to ‘{0}’", ADDRESS_TO);
         }

http://www.2ey.cn/showart.asp?art_id=338

可见端口设定变为最重要的一项,看准了用2.0时不能用465端口,而要用587,昨晚上发后一半用了半个小时也不成功。

可是用passwordrecovery控件的时候出了问题,它默认的enablessl是false,我又懒得自己写一个出来,所以在该空间的sendingmail事件中添加如下代码(不要忘了using System.Net.Mail;):

        MailMessage mail = e.Message;
        e.Cancel = true;
        SmtpClient smtp = new SmtpClient();
        smtp.EnableSsl = true;       
        smtp.Send(mail);

这样就搞定了。

然后我再查查怎么丰富一下邮件内容,即设置(Mail)BodyFile

通过孟繁永

为躺在床上也躺不舒服的兄弟祈祷

       某人去杭州看某人了,我才意识到问题有点严重。

       幸好电话里问了一下也算什么大病,可在这盛世就医那也至少要半年的工资啊,何况一起毕业的这伙子人到了一起不比谁挣钱多,都说比谁欠债多。除了恐怕别人借钱的小心眼,我看还是实情就是这样。

       上周偶然经过教五又见尚仲生开讲座,听了听有一点收获,那就是我属于“被文化武装了的游民”那一帮人。

       今天下午六点下了班,发现外面远比办公室暖和,出来太阳还没落,骑着老婆的自行车回家,心里美滋滋的。

       往家里寄了一套视频监控系统,专门守着我们家里那几头母猪的。这几头猪挺争气,从大年初一到现在下了三窝崽了。只是见大冷天父母还要整宿的盯着,心里实在不忍。这套东西调通运行了,我在电话里也听得出父母的欣喜,不只因为马上又有一窝小猪仔,也因为自己的儿子给家里做了一点实事。

        最后,希望那家伙的屁股早点好起来,希望那家伙的心情也早点好起来。

通过孟繁永

让六度眼见为实

        新版的蚂蚁网上线了,连账号信息都扔了,还要重新注册。

        稍微看了一下,发现这次的蚂蚁又重新回到了他最初的方向上。可见当初构建网上购物的尝试是失败的。

         前些日子我无聊的时候做了一个展示博客好友列表的原型,出发点就是让六度眼见为实,可喜的是蚂蚁现在做出来了。大家可以看看,www.mayi.com

         可惜仔细看了下,他做的又不够深入,只显示一阶好友,而且只是为了推广自己的网站。如果能做一个像hi首页那样的flash,以某个博客为圆点,周围散布他的好友,然后像路由一样显示自己到这个博客的跳数之类,那会更有意思些。

通过孟繁永

关于几个网站暂停服务的通告

由于服务器原因,信管地带,武邑人社区,信息素养协会,皇皇武大,武汉七校新闻网暂停服务。预计一周内可以恢复。
通过孟繁永

用Linq生成无限级分类菜单TreeView

数据模型:NewsCategory

Cateid

uniqueidentifier

ID

CateName

Nvarchar(256)

分类名

PreCate

uniqueidentifier

父类

IsLeaf

bit

是否为叶子

首先创建Linq to sql classes文件DB.dbml,把该表拖进去

下面是代码:

在页面上放:

<asp:TreeView ID="TreeView1" runat="server" ShowLines="True">
    </asp:TreeView>

.cs中为:

    DBDataContext ctx = new DBDataContext();

    protected void Page_Load(object sender, EventArgs e)
    {             
        IQueryable<NewsCategory> cates = from cate in ctx.NewsCategories
                                         where cate.PreCate.ToString().Equals("root")
                                         select cate;
        foreach (var cate in cates)
        {
            TreeNode node = new TreeNode();
            node.Text = cate.CateName;
            node.Value = cate.CateId.ToString();
            TreeView1.Nodes.Add(node);
            if (cate.IsLeaf==false)
            {
                node.Expanded = true;
                AddReplies(node);
            }
        }
    }

    private void AddReplies(TreeNode node)
    {
        IQueryable<NewsCategory> cs = from c in ctx.NewsCategories
                                      where c.PreCate.ToString().Equals(node.Value)
                                      select c;
        foreach (var c in cs)
        {
            TreeNode replyNode = new TreeNode();
            replyNode.Text = c.CateName;
            replyNode.Value = c.CateId.ToString();
            node.ChildNodes.Add(replyNode);
            if (c.IsLeaf==false)
            {
                replyNode.Expanded = true;
                AddReplies(replyNode);
            }
           
        }
    }

通过孟繁永

南方都市报刊称迅雷被指盗窃用户文件

谨慎使用迅雷建议

1.使用官方正式版的迅雷软件,不要选择来历不明、经过改编的“去广告版”等迅雷
2.不要设置开机自动运行迅雷,下载时以不影响其他网络应用为前提,觉得妨碍电脑运行和其他上网应用时不妨暂停下载,关闭迅雷
3.如有必要可选择在晚上不用电脑时进行下载,以免影响电脑和网络的正常使用
4.P2P精神在于无私分享,但不希望继续长期上传的文件可以转移下载到其他分区或对文件改名.

原文请看http://www.cnbeta.com/articles/49522.htm

我在一张电脑城发布的系统光盘上发现了一个绿色简化版的迅雷,现在提供给大家下载使用。下载

通过孟繁永

纯牛奶

       纯牛奶是今年的潮流,以往的点心盒子不见了,三鹿卖得断了货,拜年的都送上一箱纯牛奶以示亲近,当然也少不了不知道用什么东西勾兑的奶饮料。

通过孟繁永

偷牛

邻村一头牛半夜被装车的时候主人听到了动静,贼人心急扯掉了一只牛角未能把牛拉上车。

0-0-0-0-0-0-0

通过孟繁永

偷猪

35头猪,深夜被人装上了车,老两口听见动静出屋观察,被捆绑后扔在院里,未能呼救。

猪就是这样被偷走的。

--------过年听闻-------