在Ubuntu中用Evolution设置Gmail收发邮件的方法

1. 启动Evolution。
2. 点击“编辑”──首选项。
3. 点击添加(账户)/注:如果你已经设置过gmail账户,则可以点击编辑。
4. 在名称里输入你的名字,在请求的信息中全名和电子邮件地址都填写你的Email地址。填好之后点击接收电子邮件标签。
5. 接收电子邮件:服务器类型:POP; 服务器:pop.gmail.com; 用户名:你的gmail地址,如kakald@gmail.com; 使用安全链接:SSL加密; 记住密码。设置好后点击下一个标签。
6. 接收选项:按自己喜欢设置,并不影响gmail是否在evolution中工作。
7. 发送电子邮件:服务器类型:smtp; 服务器:smtp.gmail.com; 服务器需要认证:选中; 使用安全链接,SSL加密; 身份验证:用默认的"Plain"; 用户名:同你的邮件地址,如qike006@gmail.com,最后记住密码。
8. 默认选项卡可以依喜好设置,或保持默认。
9. 点击应用,完成设置。
现在你可以试试发送接收邮件,如果提示你输入密码,说明成功了,你可以用Evolution发送接收gmail邮件了。
如果有问题请留言讨论,或给我发邮件:qike006@gmail.com

通过Connectify使你的笔记本电脑或台式机变成无线路由器

      科技的进步,使得现在笔记本、手机等设备基本上都配备了WIFI无线网卡了,有了WIFI无线网卡,再在家里买个无线路由器,通过WIFI无线共享宽带上网是非常方便的。但是如果在学校宿舍、酒店或者别人的家,就不一定能有个无线路由器来让你连接多台设备,使手机、笔记本同时通过WIFI无线网卡上网了,这时你是不是想如果有个随身携带的无线路由器那该多好啊。
      其实,只要你有一台有无线网卡的笔记本,而且安装了 Windows 7 的操作系统,再安装这个叫 Connectify 的软件,就能把你的笔记本变成一个无线路由器,让WIFI手机或者别的笔记本(带有无线网卡)也共享上网了,绝对方便多了。Connectify 是一款超酷的软件!完全免费,没有任何的限制,绝对让你的笔记本“增值”不少呢,你有什么理由不收藏它呢?!

Connectify的作用

      Connectify 软件操作界面十分的简单,它没有什么多余的设置选项,只需要按部就班的填写上无线网络的名称、设置好无线网络密码以及你正在使用的联网方式便可以让你的笔记本变成一个“虚拟无线路由器”了。

      那么把自己的笔记本变成“虚拟无线路由器”实际上有什么作用呢?我来简单说说吧。其实它就是通过WIFI无线,让多个设备蹭一个网络连接。例如某人家里开了个电信宽带,没买路由器,只有1条网线,本来只能让1台电脑上网,这时用笔记本接上网线,笔记本就能通过网线上网了吧。然后用 Connectify 软件通过 WIFI 无线信号传输出去(类似无线路由器),这时其实你的笔记本就成了一个“WIFI热点”。然后,在信号覆盖范围内,我们就能用WIFI手机,带有无线网卡的电脑等等任何设备来连接到这个“热点”上网了。这样就实现了不需要实物路由器来共享上网了。
      经我亲自测试,我的 iPhone、魅族M8 和一台带有无线网卡的台式机都能通过笔记本共享上网……

对操作系统的要求

      由于 Connectify 依赖于Windows 7 所做出的重大改进,它目前仅支持Windows 7系统。呵呵,是不是又多一个升级到Windows 7的理由了呢? 有条件的朋友就别死守XP了,尽早体验新技术吧。

对无线网卡的兼容性

      遗憾的是,经过我的测试,并不是所有的无线网卡都能够支持这个虚拟无线网络技术,例如我写作的这台笔记本的无线网卡就不支持了,但之前试过另一台倒能完全正常。大家可以到Connectify的网站上查查它支持什么型号的网卡,或者下载回来试试也就知道了。由于现在手头上只有这一台安装了Windows 7的笔记本,也不能截实际使用的图了。

Connectify的下载地址:

http://www.connectify.me/download/index.html

关于台式机

备注:其实台式机也是可以使用的,前提是Connectify支持你电脑的无线网卡。

排解Windows7/XP/Vista局域网访问权限故障

问:XP系统的电脑无法访问Windows7的共享文件夹,有些虽然能看到Windows7下的共享目录,但是一旦进入目录,就会提示没有访问权限。

解决方案:进入到“网络和共享中心”进行设置,将Windows的防火墙关闭。虽然这样做会有不安全的风险,但是为了能实现不同系统间的相互访问,也只能不得已而为之了。

关闭了Windows防火墙后,下一步要进入到防火墙设置界面左边的“高级设置”中,对“入站规则”和“出站规则”进行修改。在这两个规则中,分别找到“文件和打印机共享”选项,并且将其全部选项设定成“Allow all connection”。

在进行完以上设定后,要进入到“用户帐户”里,开启“Guest”帐户,并且在系统服务里,开启对应的共享功能。至此,共享的设定已经完成得差不多了。最后是对所对应的共享文件夹进行设置。如果熟悉XP共享设置的用户,基本上可以很方便的对以下设置进行操作,其Windows7设置共享的理念和XP几乎是相同的,有所区别的只是设置的路径有所不同。

第一步选择要共享的文件夹,单击右键选择“属性”,在“共享”的选项卡里选择“高级共享”,并且将“共享此文件夹”前的钩打上,随后在“权限”中依次点击“添加”——“高级”——“立即查找”。然后在查找的结果中选择“Everyone”以及“Guest”并确认即可。

通过以上步骤基本上可以解决99%的XP无法访问Windows7的共享文件夹的问题,当然也不排除通过以上方法依然出现访问异常。为此建议可以暂时关闭额外安装的杀毒软件或者诸如天网等第三方的网络防火墙,以免其它网络防火墙对访问造成阻碍。

————————————————————————————————————————————————

:单位局域网中的操作系统很多,有XP、Vista,还有Windows 7。现在我遇到了一个问题,就是XP在网上邻居中能够看到共享的驱动器,访问时却提示没有权限。由于共享驱动器不能运用向导,只能运用高级共享,但明明高级共享中已经添加了“Everyone”的权限,怎么还是说没有权限呢?请指点迷津!

解决方案:因为你忽视了一点——共享除了要分配相应权限外,还同时受制于文件系统的NTFS权限。所以还必须在驱动器的安全选项卡中添加相应的NTFS权限,而Windows 7/Vista下格式化的驱动器及以下的目录默认是没有“Everyone”和“Guest”权限的。但由于通过向导形式共享时会自动匹配和更新NTFS的权限,所以一般共享文件夹不会有问题。

Windows 7/Vista下格式化的驱动器默认的权限有:Authenticated Users(XP无此项);System Administrators(管理员组);Users(受限用户组)。而XP默认的权限是:Administrators(管理员组);CreatorOwner(建立文件夹的所有者,Vista无此项);Everyone(XP下驱动器默认就有只读的权限)。

其中最主要的一个不同就是CreatorOwner(所有者)了。在XP下建立的文件夹所有者是建立该文件夹的具体用户,所以配置过权限的文件夹重装系统后NTFS后往往会出现以SID形式显示的未知账户。而Windows 7/Vista 默认的所有者是该组,比如你是管理员,你建立的文件夹所有者就是Administrators组。所以Windows 7/Vista 下建立的文件夹没有CreatorOwner的相应权限。

道理说了这么多,解决的办法就一句话:只要在你所建立的共享文件夹或系统NTFS格式的硬盘上点鼠标右键然依次选择“属性→安全”,然后在“组或用户名”栏点“编辑”,再点“添加”,在“输入对象名称来选择”中输入“Everyone”后点“确定”。XP的机子就能访问你在Windows 7/Vista 中所建立的共享驱动器和文件夹了。

Access隐藏表的方法和显示隐藏表的方法

    Access的隐藏表功能一直没用过,今天想到给表设置个备注(在表上点右键点属性),结果看到可以隐藏,当勾选后,表真的消失了,这下头大了,没办法只能上雅虎的谷歌百度了一下,嘿嘿,结果发现以下的方法可以搞定:

法一:
(已测试)
如果你想在Access的数据库窗口中隐藏你不想让其它用户选择的表,你可以在前面加上前缀'Usys'。例如,如果你的表名为:Employee,将它改名为:UsysEmployee,这将使你的表加入到系统对象中,这样ACCESS就不会显示它。如果以后要看这个表,可以通过选择菜单--工具--选项--视图中勾选“系统对象”来在数据库窗口中操作该表。
法二:
~TMPCLP
可以隐藏这个表,用查看系统或隐藏对象也无法看到,但可以在MSysObjects这个表中查得。
在关闭数据库或压缩数据库后,该表不会消失。
另外手工删除表时,系统也会自动命名这个为 ~TMPCLPXXXXXX,不过和手工改表名称不同,被删除的表在MSysObjects的 Flags 字段值为4097,在关闭数据库或压缩数据库后,该表将消失。

这下你知道如何在Access中隐藏表以及把Access隐藏的表找出来吧?

什么是Unix时间戳(Unix timestamp,Unix Time),以及转换普通时间的方法

什么是Unix时间戳(Unix timestamp)?

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类Unix系统中,也在许多其他操作系统中被广告采用。

目前相当一部分操作系统使用32位二进制数字表示时间。此类系统的Unix时间戳最多可以使用到格林威治时间2038年01月19日03时14分07秒(二进制:01111111 11111111 11111111 11111111)。其后一秒,二进制数字会变为10000000 00000000 00000000 00000000,发生溢出错误,造成系统将时间误解为1901年12月13日20时45分52秒。这很可能会引起软件故障,甚至是系统瘫痪。使用64位二进制数字表示时间的系统(最多可以使用到格林威治时间292,277,026,596年12月04日15时30分08秒)则基本不会遇到这类溢出问题。

如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?

Java time
JavaScript Math.round(new Date().getTime()/1000)

getTime()返回数值的单位是毫秒

Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000
MySQL SELECT unix_timestamp(now())
Perl time
PHP time()
PostgreSQL SELECT extract(epoch FROM now())
Python import time 然后 time.time()
Ruby 获取Unix时间戳:Time.now Time.new

显示Unix时间戳:Time.now.to_i

SQL Server SELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE())
Unix / Linux date +%s
VBScript / ASP DateDiff("s", "01/01/1970 00:00:00", Now())
其他操作系统

(如果Perl被安装在系统中)

命令行状态:perl -e "print time"

如何在不同编程语言中实现Unix时间戳(Unix timestamp) → 普通时间?

Java String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000))
JavaScript var unixTimestamp = new Date(Unix timestamp * 1000) 然后 commonTime = unixTimestamp.toLocaleString()
Linux date -d @Unix timestamp
MySQL from_unixtime(Unix timestamp)
Perl my $time = Unix timestamp 然后 my ($sec, $min, $hour, $day, $month, $year) = (localtime($time))[0,1,2,3,4,5,6]
PHP date('r', Unix timestamp)
PostgreSQL SELECT TIMESTAMP WITH TIME ZONE 'epoch' + Unix timestamp) * INTERVAL '1 second';
Python import time 然后 time.gmtime(Unix timestamp)
Ruby Time.at(Unix timestamp)
SQL Server DATEADD(s, Unix timestamp, '1970-01-01 00:00:00')
VBScript / ASP DateAdd("s", Unix timestamp, "01/01/1970 00:00:00")
其他操作系统

(如果Perl被安装在系统中)

命令行状态:perl -e "print scalar(localtime(Unix timestamp))"

如何在不同编程语言中实现普通时间 → Unix时间戳(Unix timestamp)?

Java long epoch = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").parse("01/01/1970 01:00:00");
JavaScript var commonTime = new Date(Date.UTC(year, month - 1, day, hour, minute, second))
MySQL SELECT unix_timestamp(time)

时间格式: YYYY-MM-DD HH:MM:SS 或 YYMMDD 或 YYYYMMDD

Perl use Time::Local 然后 my $time = timelocal($sec, $min, $hour, $day, $month, $year);
PHP mktime(hour, minute, second, day, month, year)
PostgreSQL SELECT extract(epoch FROM date('YYYY-MM-DD HH:MM:SS'));
Python import time 然后 int(time.mktime(time.strptime('YYYY-MM-DD HH:MM:SS', '%Y-%m-%d %H:%M:%S')))
Ruby Time.local(year, month, day, hour, minute, second)
SQL Server SELECT DATEDIFF(s, '1970-01-01 00:00:00', time)
Unix / Linux date +%s -d"Jan 1, 1970 00:00:01"
VBScript / ASP DateDiff("s", "01/01/1970 00:00:00", time)

Windows 7和Windows Vista暗藏的管理功能–上帝模式(GodMode)

GodMode 的字面意思是:上帝模式。
简单来说,上帝模式可以理解为一个快捷方式;能籍其实现对系统设定的集中控制,让操作变得更简洁;只需鼠标轻轻一点,几乎所有设置,都可在一个窗口中找到。例如,控制面板设置,界面个性化选择等等。
其实开启上帝模式的方法异常简单。
首先,请于任意地方新建一个文件夹。(我喜欢将这个文件夹建在桌面上,所以此处以桌面为例)
在桌面没有图标的空白处,按一下鼠标右键,选择新建(W)〉文件夹(F)

然后,请输入下面这个字符串来命名文件夹;

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

(为避免输入出错,建议大家直接复制粘贴

完成后,按一下回车键;看看,奇迹出现!

没错,文件夹图标变成了控制面板图标;双击打开,272个项目排列清晰,供您随意选择;范围涵盖之广,简直媲美万能,怪不得被称为上帝模式!

小提醒

  • 32位的 Windows Vista 也是支持这项功能的,操作步骤是一样的哦!
  • 另外,虽然文件名的后面一部分 .{ED7BA470-8E54-465E-825C-99712043E01C} 不能更改,但是前一半GodMode 还是能变动的,所以,你可以为这个模式起个特别点的名字,比如写成中文“上帝模式”,或者其他名字都是可以的。

Windows 7系统上无法使用USB问题正确检测步骤

问:我是Windows 7旗舰版用户,一直用的很好,USB也能用,后来改用管理员登陆以后,USB就无法用了.连接什么都一点反应都没有,这是怎么回事啊?正确的解决这个问题的检测步骤是怎样的。

答:  可以先看下其他USB口是否也不能用。
  是否所有的USB设备都有这样的问题?如果只有一个USB设备有问题的话,请检查下是否在其他机器上也存在这个问题。
  还有可能就是主板供电不足。将其他外接设备全部拔除看看为题是否还存在。
  另外,可以尝试下面的步骤:
1.     打开设备管理器。
2.     双击打开通用串行总线控制器。
3.     右键列表里的 USB控制器,然后单击删除。
4.     按照上面的步骤删除所有的USB控制器。
5.     重新启动计算机。

来源:微软技术论坛 Linda Yan版主

Apache网站服务器通过.htaccess和.htpasswd给网页文件夹设置密码的方法

    作为网站管理员,我们不希望存放在服务器上的某些文件夹内的文件的被未经授权访问者获取,所以我们需要一个有效的方法来限制某些文件夹的访问。也许你会问:常见的用php或其它语言编写的网站前台用户注册和登录系统不是已经限制用户可以进入哪些页面和使用什么功能吗?但是,这一类的认证机制只对这些语言编写出的文件有效(而且前提是你已把认证的代码嵌入该文件),但这一类认证机制并不能保护你网站上的图片、文档以及其它类型文件不被他人获取,访问者或黑客还是可以通过url直接获取到你存放在某个文件夹内的文件。

     有什么简单的方法可以让我们灵活地控制文件夹的访问呢?有个方法很简单,通过Apache的.htaccess和.htpasswd给文件夹加上用户密码认证就可以了。操作起来还很简单呢,因为apache服务器已经提供了丰富的认证支持,我们只需要制作两个文件.htaccess和.htpasswd(注意前面带有一个点)。

    注意:由于.htaccess文件名结构较特别,在Windows系统内无法创建文件名为.htaccess的文件(Windows Vista和Windows 7是可以创建这种文件名的,但是这之前的系统应该是不可以的),唯有的办法是在文本编辑器中写好.htaccess文件内容,保存,上传(ASCII传输方式)至站点服务器,然后在FTP中重命名上传文件为.htaccess即可。

.htaccess文件

AuthType Basic
AuthName "restricted area"
AuthUserFile /usr/virtual/default/www.x2009.net/conf/.htpasswd
require valid-user
第一行的AuthType指的是采用的认证方式,在这里我们选择的是一般的Basic,要注意的是,Basic认证方式传输密码过程是不加密的,更安全的方式是Digest,但Digest认证方式需要mod_auth_digest模块的支持,使用前最好先通过检查一下服务器是否已经开启该模块;第二行的AuthName记录的认证名称,会显示在认证询问框上,如果存在多个认证,认证名称可以让你更清楚当前认证该输入什么用户名和密码,遗憾的是认证名称似乎不支持中文;第三行,输入存放用户密码的认证文件路径。

.htpasswd文件

outwego.com:123456
outwego.net:654321
outwego:12tir.zIbWQ3c
在.htpasswd文件我们记录下授权用户的账号名和密码,冒号前的是账号名,冒号后的则是密码,一行记录一条授权用户信息,不要多,如果你不想密码明文显示出来,可以用MD5加密一下,网上有这样的工具,第三行代码就是密码123456加密后的效果。
test.php

<?php phpinfo(); ?>

注意:.htpasswd文件可以放在任意一个文件夹,只要在.htaccess里设置相应的位置就可以了,然后你要保护哪个文件夹,就把.htaccess放在那个文件夹就好了,以后任何人访问那个网址都会被询问用户名和密码。

在SQL Server和Access中清空表并重新开始编号的方法

SQL Server:

Truncate是SQL中的一个删除数据内容的语句,用法是:

语法

TRUNCATE TABLE name

参数

name

是要截断的的名称或要删除其全部行的的名称。

下面是对Truncate语句在MSSQLServer2000中用法和原理的说明:

Truncate table 名 速度快,而且效率高,因为:

TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

TRUNCATE TABLE 删除中的所有行,但结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除定义及其数据,请使用 DROP TABLE 语句。

对于由 FOREIGN KEY 约束引用的,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

TRUNCATE TABLE 不能用于参与了索引视图的

对用TRUNCATE TABLE删除数据的上增加数据时,要使用UPDATE STATISTICS来维护索引信息。

示例

下例删除 authors 中的所有数据。

TRUNCATE TABLE authors

权限

TRUNCATE TABLE 权限默认授予所有者、sysadmin 固定服务器角色成员、db_owner 和 db_ddladmin 固定数据库角色成员且不可转让。

Access

delete   from   名   ;   //删除中记录  
  ALTER   TABLE   名     //重新标识计数 
      ALTER   COLUMN   OrderId   COUNTER   (1,   1)   ;