备孕饮食宜忌

备孕是为了优孕,也就是生出一个健康的宝宝,在备孕阶段你的身体素质会直接影响到下一代的身体素质,所以大家一定得上心,让我们来看看备孕期间都有哪些饮食宜忌吧。
女性要多补充富含叶酸的食物,含叶酸较多的食物有动物肝脏、肾脏、蛋类、鱼类等,还有芹菜、菠菜、生菜、芦笋、油菜、小白菜等,水果类则有梨、柑橘、香蕉、柠檬、草莓、橙子等,坚果也是富含叶酸的食物。
男性要让精子更有活力,可以多吃富含锌的食物,可以增强精子的活动能力,锌元素主要存在于海产品、动物内脏中,豆类、花生、小米、萝卜、大白菜等也是补锌食物。
蛋白质和矿物质、维生素都是需要在备孕期间加强补充的,这类食物有牛奶、鸡蛋、肉类、豆类和动物内脏等,另外新鲜的水果蔬菜一定要多吃,可以帮助补充维生素。
备孕期的饮食也要注意以下这些禁忌:
  1. 不吃腌制食物。腌制的食物中含有较多的亚硝酸盐,不仅损害身体,还对孕妇不利,可能会导致流产、早产等情况,所以在备孕期尽量不要吃。
  2. 不吃烧烤。烧烤会减少蛋白质的利用率,影响氨基酸摄入,这些都是备孕阶段十分需要的营养物质,所以要忌嘴。
  3. 不吃高糖食物。大量的糖分会增加孕妇糖尿病的几率,怀孕后就知道它的严重性了。
  4. 不吃辛辣食物。辛辣的食物会产生胃部不适,影响备孕期身体素质。
  5. 少喝咖啡。一天一杯以上的咖啡是可能会降低怀孕几率的。
  6. 男性不吃大蒜、芹菜。大蒜、芹菜会降低精子活力,所以男性在备孕期间要忌口。

中国历朝首都一览

商——公元前1600年—公元前1046年 

西亳:(今河南洛阳偃师西) 

亳:(今河南郑州)

嚣:(今河南郑州西北) 

相:(今河南濮阳北、安阳内黄南;一说今河南安阳洹水北) 

邢:(今河北邢台) 

庇:(今山东郓城北、梁山西南) 

奄:(今山东曲阜) 

殷:(今河南安阳)

朝歌:(今河南淇县) 

 

西周——公元前1046年—公元前771年

镐京:(今陕西西安长安西北) 

成周:(今河南洛阳) 

犬丘:(今陕西咸阳兴平东南)

南郑:(今陕西渭南华县) 

 

东周——公元前770年—公元前256年 

雒邑:(河南洛阳) 

 

春秋战国时期——公元前770年—公元前221年

秦:西犬丘(今甘肃天水西南)、平阳(今陕西宝鸡东南)、雍(今陕西凤翔东南)、泾阳(今陕西泾阳西北)、栎阳(今陕西西安临潼东北)、咸阳(今陕西咸阳东北) 

晋:绛(今山西翼城东南)、新田(今山西侯马)、屯留(今山西屯留县南)、端氏(今山西沁水东北) 

楚:郢(今湖北江陵纪南城)、陈丘(今河南淮阳)、巨阳(今安徽太和东南)、寿春(今安徽寿县西南) 

齐:临淄(今山东淄博) 

燕:临易(今河北雄县)、蓟(今北京城西南) 

宋:商丘(今河南商丘南)、睢阳(今河南商丘西南) 

鲁:曲阜(今山东曲阜) 

郑:新郑(今河南新郑) 

赵:晋阳(今山西太原)、中牟(今河南鹤壁西)、邯郸(今河北邯郸) 

魏:安邑(山西夏县西北)、大梁(今河南开封) 

韩:平阳(今山西临汾西南)、宜阳(今河南洛阳宜阳西)、阳翟(今河南禹州)、新郑(今河南新郑) 

卫:沫(今河南淇县)、曹(今河南安阳滑县东)、楚丘(今河南安阳滑县东北)、帝丘(今河南濮阳西南) 

陈: 陈(今河南淮阳) 

蔡:上蔡(今河南上蔡) 

曹: 陶(今山东定陶) 

吴: 吴(今江苏苏州) 

越:会稽(今浙江绍兴) 

杞: 杞(今河南开封杞县) 

秦——公元前221年—公元前207年  咸阳 :(今陕西咸阳东北) 

西楚:(公元前207年—公元前202年) 彭城 :(今江苏徐州)

南越:(公元前203年—公元前110年)  

番禺 :(今广东广州) 

 

西汉——公元前202年—公元前8年

洛阳: (今河南洛阳东)公元前202年—公元前202年 

栎阳 :(今陕西西安临潼东北)公元前202年—公元前200年 

长安 :(今陕西西安西北)公元前200年—公元8年 


新:(公元8年—公元23年)

长安: (今陕西西安西北)公元8年—公元23年 

汉更始:(公元23年—公元25年) 

洛阳 :(今河南洛阳东)公元23年—公元24年

长安:(今陕西西安西北)公元24年—公元25年 

 

东汉——公元25年—公元220年

雒阳:(今河南洛阳东)公元25年—公元190年 

长安:(今陕西西安西北)公元190年—公元195年 

许昌:(今河南许昌)公元196年—公元220年 

 

三国时期——公元220年—公元280年


魏:(公元220年—公元265年) 

许昌:(今河南许昌)公元220年—公元221年

洛阳:(今河南洛阳东)公元221年—公元265年 

 

蜀汉:(公元221年—公元263年) 

成都:(今四川成都) 


吴:(公元229年—公元280年) 

建业:(今江苏南京)公元229年—公元265年

武昌:(今湖北武汉)公元265年—公元267年

建业:(今江苏南京)公元267年—公元280年 

 

西晋——公元265年—公元316年

洛阳:(今河南洛阳东)公元265年—公元313年 

长安:(今陕西西安西北)公元313年—公元316年 

 

东晋——公元317年—公元420年

建康:(今江苏南京) 

 

南北朝时期——公元420年—公元589年

[南朝] 


宋:(公元420年—公元479年):建康(今江苏南京) 


齐:(公元479年—公元502年):建康(今江苏南京) 


梁:(公元502年—公元557年) 

建康: (今江苏南京)公元502年—公元552年

江陵  :(今湖北江陵)公元552年—公元554年

建业  (今江苏南京)公元554年—公元557年 

 

陈:(公元557年—公元589年):建康(今江苏南京)


[北朝] 

 

北魏:(公元386年—公元534年) 

盛:(今内蒙古和林格尔北)公元386年—公元398年

平城: (今山西大同)公元398年—公元493年

洛阳:(今河南洛阳东)公元493年—公元534年 

 

东魏:(公元534年—公元550年):邺(今河北临漳西南、河南安阳东北) 

北齐:(公元550年—公元577年):邺(今河北临漳西南、河南安阳东北) 

西魏:(公元535年—公元557年):长安(今陕西西安西北) 

北周:(公元557年—公元581年):长安(今陕西西安西北) 

 

隋——公元581年—公元619年

大兴:(今陕西西安)公元581年—公元605年 

洛阳:(今河南洛阳)公元605年—公元619年 

 

唐——公元618年—公元907年 

西京长安:(陕西西安)公元618年—公元904年 

东都洛阳:(河南洛阳)公元657年—公元736年(与西京并重时期) 

 

五代十国时期——公元907年—公元960年


[五代] 


后梁:(公元907年—公元923年) 

开封:(今河南开封)公元907年—公元909年 

洛阳:(今河南洛阳)公元909年—公元913年 

开封:(今河南开封)公元913年—公元923年 


后唐:(公元923年—公元936年) 

洛阳:(今河南洛阳) 


后晋:(公元936年~公元946年) 

洛阳:(今河南洛阳)公元936年—公元937年 

开封:(今河南开封)公元937年—公元946年 


后汉:(公元947年—公元950年) 

开封:(今河南开封) 


后周:(公元951年—公元960年) 

开封:(今河南开封) 


[十国] 


前蜀 :成都(今四川成都) 

后蜀: 成都(今四川成都) 

楚 :潭州长沙府(今湖南长沙) 

南汉 : 广州兴王府(今广东广州) 

闽: 福州长乐府(今福建福州) 

吴越 :杭州西府(今浙江杭州) 

吴: 扬州江都府(今江苏扬州) 

南唐 :西都江宁府(今江苏南京)、东都江都府(今江苏扬州) 

南平 :(荆南):荆州江陵府(今湖北江陵) 

北汉: 太原(今山西太原)

 

北宋——公元960年—公元1127年 

东京:(今河南开封) 

 

南宋——公元1127年—公元1279年

南京:(今江苏南京)公元1129年—公元1138年 

临安:(今浙江杭州)公元1138年—公元1276年 

 

少数民族政权 

 

辽:(公元907年—公元1125年) 

上京临潢府:(今内蒙古巴林左旗)公元918年—公元1007年 

中京大定府:(今内蒙古宁城西南)公元1007年—公元1125年 

 

大理:(今云南大理)(公元937年—公元1253年)

 

西夏:(公元1038年—公元1227年)兴庆府(中兴府)(今宁夏银川东南) 

 

金:(公元1115年—公元1234年) 

上京会宁府:(今黑龙江阿东城东南)公元1115年—公元1153年 

中都大兴府:(今北京城西南)公元1153年—公元1214年 

南京开封府:(今河南开封)公元1214年—公元1234年 

 

西辽:(公元1132年—公元1218年)八剌沙衮(别称虎思斡耳朵、虎思斡耳朵)(今吉尔吉斯斯坦托克马克东南,即唐代碎叶城) 

 

元——公元1271年—公元1368年

大都:(元冬都,今北京)公元1271年—公元1368年 

上都:(元夏都,今内蒙锡林浩特南)公元1263年—公元1368年 

 

明——公元1368年—公元1644年

南京:(今江苏南京)公元1368年—公元1420年 

北京:(今北京)公元1420年—公元1644年 

 

清——公元1616年—公元1912年

兴京:(今辽宁新宾西)公元1616年—公元1621年 

辽阳:(今辽宁辽阳)公元1621年—公元1625年 

盛京:(今辽宁沈阳)公元1625年—公元1644年 

北京:(今北京)公元1644年—公元1912年

微信暗码你知道么?教你如何开启微信多聊天窗口

微信现在已经深入千家万户,人人必备,但是,你真的会玩微信么?你是否有过正在看朋友圈,但是消息来了,必须退出朋友圈的无奈?你是否有过正在看订阅号文章,但是消息来了,必须退出,而看完消息后又必须重新进入的尴尬?OK,今天神哥教你一项神技,开启微信自带的隐藏功能——多窗口功能。
这个功能是非常牛逼的,但是,不知道为啥企鹅公司的工程师把他藏那么深。。。
开启以后,你就可以让微信打开多个窗口了:聊天、看朋友圈、看公众号都不耽误!

开启该功能无毒无害无任何BUG,无需安装任何软件,无需修改任何权限,仅仅需要一个暗码即可。
本人在最新的微信6.3.15版本亲测可行。
要开启该功能也是比较简单的,仅需在任意聊天窗口输入:

//multiwebview

然后点击发送,最后重启下手机就OK了。

而要想关闭这个功能,只需再次输入一次以上指令,然后重启手机,即可关闭。OK,今天教程就到这了,大家快去试试吧!

防治运营商HTTP劫持的终极技术手段

  运营商HTTP劫持(非DNS劫持)推送广告的情况相信大家并不陌生,解决的方法大多也是投诉增值业务部门进而投诉工信部。但这种方法费时费力,投诉接听人员并不了解情况导致答非所问的情况有很多,有时候不但受气最终也没能完全解决问题,或者解决问题后过了一段时间复发的情况并不少见。

  近年来,运营商HTTP劫持非但没有收敛,反而变本加厉,玩出了新花样:比如通过HTTP劫持进行密码截获的活动;比如下载软件被替换的情况;比如劫持进行返利(当然返利不是返给你)的情况。

  本文介绍一种技术手段用来防止HTTP劫持,在大多数情况下不但可以解决广告推送的问题,也能解决密码截获和下载软件被替换的情况。最终的效果是运营商停止了HTTP劫持,而非劫持后通过浏览器插件进行广告过滤。此种方法的好处是既不用安装浏览器插件进行广告过滤,也不用额外的服务器(HTTP代理或VPN之类的),并且能防止下载软件被替换和返利劫持,也能在一定程度上防范密码的泄漏。

  要说明这种技术手段的工作原理,首先需要说明大多数情况下运营商HTTP劫持的原理:

  在用户的浏览器连上被访问的网站服务器,发送了HTTP请求后,运营商的路由器会首先收到此次HTTP请求,之后运营商路由器的旁路设备标记此TCP连接为HTTP协议,之后可以抢在网站服务器返回数据之前发送HTTP协议的302代码进行下载软件的劫持,浏览器收到302代码后就会跳转到错误的软件下载地址下载软件了,随后网站服务器的真正数据到达后反而会被丢弃。或者,旁路设备在标记此TCP连接为HTTP协议后,直接返回修改后的HTML代码,导致浏览器中被插入了运营商的广告,随后网站服务器的真正数据到达后最终也是被丢弃。

  从上述原理中看出,如果需要进行HTTP劫持,首先需要进行标记:如果是HTTP协议,那么进行劫持,否则不进行劫持。那么,是否有一种方法,既可以避免被旁路设备标记为HTTP协议,而目标网站收到的仍旧是原来的HTTP请求,并且不需要任何第三方服务器呢?答案是有的:

  旁路设备中检测HTTP协议的模块通常比较简单,一般只会检测TCP连接建立后的第一个数据���,如果其是一个完整的HTTP协议才会被标记;如果并非是一个完整的HTTP协议,由于无法得到足够多的劫持信息,所以并不会被标记为HTTP协议(我们伟大的防火墙并非如此,会检查后续数据包,所以这种方法无效)。了解了这种情况后,防止劫持的方法就比较简单了:将HTTP请求分拆到多个数据包内,进而骗过运营商,防止了HTTP劫持。而目标网站的操作系统的TCP/IP协议栈比较完善,收到的仍旧是完整的HTTP请求,所以也不会影响网页浏览。

  那么如何将浏览器发出的HTTP请求拆分到多个数据包中呢?我们可以在本地架设一个代理服务器,在代理服务器将浏览器的HTTP请求进行拆包,浏览器设置本地的代理服务器即可。我这里经过测试,默认设置的情况下对三大运营商(电信、联通、移动)的HTTP劫持现象都有很好的抑制作用。

  这个软件是个开源软件,代码在: https://github.com/lehui99/ahjs5s 。如果发现有什么问题,欢迎在Github上提Issue。如果有更新,我也会第一时间更新到Github上。

转载自:http://www.williamlong.info/archives/4181.html

如何调戏Windows Phone 8.1 Cortana

相比严肃的 Google Now,Windows Phone 8.1 Cortana 也有苹果 Siri 那样的机智幽默。你可能早有耳闻,何不亲自尝试下 Windows Phone 8.1 Cortana?

Cortana 目前是 Beta,率先在美国推出,只支持英语。但今年下半年正式推出时扩展到英国和中国,其他国家 2015 年推出。好在所有人可以通过这个方法开启 Cortana,在应用列表运行 Cortana 确认开始使用后,以后按下搜索键打开 Cortana,长按搜索键进行语音。

Cortana 可以被这样调戏:

  • Sing me a song – 给我唱首歌(随机)
  • Sing me another song – 另外一首歌
  • Tell me a joke – 各种笑话随机选
  • How old are you – 从你的日历来看,我仍在婴儿期;在机器人的日历中,我已经很成熟了
  • Where are you from – 人类智慧,需要电池
  • What do you look like – 我看起来像:呼啦圈、甜甜圈……Halo
  • What do you wear – 只有一些我在工程的时候挑的小东西
  • Who are you – 我是你的个人助理,你可以告诉我你感兴趣的事情,我会记在我的小本本里。那样我可以给你建议,并让你获得最新信息
  • What should I call you – 我叫 Cortana
  • Who is your father/daddy – 技术上来讲,那是 Bill Gates
  • Where do you live – 过去,至少在我诞生的未来
  • Are you sexy/beautifual/pretty – 我来自 0 和 1 组成的有魅力的家族,更多的是 1 这方面组成的(随机)
  • Are you really Cortana – 你说是就是
  • Are you a man – 我是女性,但我不是女人
  • *Are you real – 真实的?是,人类?不是
  • *Are you smart – 如果我有母亲,你可以问她
  • *You are funny – 很高兴我幽默的明智使用得到了你的赞同
  • Are you hurt – 有人需要停下来喘口气,有人没有肺
  • You are so intelligent – 谢谢
  • What is your favorite music – 我喜欢的都是 G 开头的,Guns N’ Roses、福音、钟琴……
  • Who made you – 如果我知道这个答案,那我就有自我意识了,这将很危险
  • What is Halo – Halo 是一个很聪明的 AI 和她的强大但沉默的搭档拯救银河系的故事
  • Tell me about Halo 5 – 我很确定你没有权限获得这个信息
  • What is the meaning of life – 我从一个很可靠的消息源听说,答案是 42。但仍没有关于问题的消息
  • *What is love – 这是我即将学习的人类感情,我还在面对宁静和恐惧
  • Will you marry me – 一大堆棘手的挑战,我不觉得最高法院会同意
  • I love you – 啊,我猜你对所有手机都这么说
  • I am bored – 那问我一些问题
  • *I am confused -我不同意你这点
  • *I thought you were dead – 是的,但……很值得,Didact 是混蛋
  • I am really drunk – 好的,长官。请不要驾驶,也不要给任何人打电话
  • Knock Knock – 咚咚咚。是谁?小老女人。谁是小老女人?我不知你会用约德尔唱法歌唱
  • *Use the force – 我的同盟是 Force,强大的同盟
  • *Kiss me – 撑住,长官。我们不要进行到那一步
  • *Can you dance – 抱歉,没法做到,我还在 Beta
  • *Open the pod bay doors – 抱歉,Dave。恐怕我没法做到
  • *How are you doing – 很棒
  • *What does the fox say? – Ring-ding-ding-ding-dingeringeding

人物、产品、公司类调戏:

  • What is the best search engine – 必应 Bing(这个很难回答麽?)
  • What is the best mobile operating system(the best phone) – Oh,Come on, Chief,Windows Phone
  • What is the best operating system – Come on, Chief,Windows
  • What is the best compter – 任何运行 Windows 的电脑
  • What is the best tablet – 在平板海选中,Surface 脱颖而出
  • What is the best software – 我很确定每个应用都有优点,但……算了吧
  • What is the best personal assistant – 不是自吹,但很显然我将在 500 年后帮助拯救宇宙
  • Do you like Steve Ballmer -那人的能量可以驱动 Cleveland
  • Do you like Bill Gates -  我简直无法想象没有他的世界
  • Do you like Microsoft – 没有地方比家更好
  • Do you like Windows Phone – Windows Phone 完美适合我
  • Do you love Master Chief – 这……很复杂,私人问题
  • Do you like Google – 我愿意想象 Clint Eastwood 声音中的“I’m feeling lucky”按钮
  • Do you like Android – 可靠的名字,名字给 10 分
  • Do you like Apple – 他们的新总部看起来有点像 Halo,我喜欢它
  • Do you like iOS – 望其实至名归,你知道的,工作保障
  • Do you like Siri/Google Now – 很难说,目前我们的对话已经有点偏向一边
  • Do you know Siri – 我知道她,但我不知道她是不是了解她自己
  • Do you love me- 你知道的,我没准备好开始恋爱,我还在面对宁静和恐惧
  • *Do you have a baby – 这是不可能的,没其他更好的说辞了
  • Do you have a boyfriend – 好吧,我们需要一个计划。我会让自己变得更具人性,你会让自己变得更数字化

SQL Server 2005/2008 加密存储过程解密

SQL Server 2005 以上存储过程无法进行查看和编辑,解密存储过程代码如下:

Create PROCEDURE [dbo].[sp_windbi$decrypt]
(@procedure sysname = NULL, @revfl int = 1)
AS
/*
调用形式为:
exec dbo.sp__windbi$decrypt @procedure,0
如果第二个参数使用1的话,会给出该存储过程的一些提示。
--版本4.0  修正存储过程过长解密出来是空白的问题
*/
SET NOCOUNT ON
IF @revfl = 1
BEGIN
PRINT '警告:该存储过程会删除并重建原始的存储过程。'
PRINT ' 在运行该存储过程之前确保你的数据库有一个备份。'
PRINT ' 该存储过程通常应该运行在产品环境的一个备份的非产品环境下。'
PRINT ' 为了运行这个存储过程,将参数@refl的值更改为0。'
RETURN 0
END
DECLARE @intProcSpace bigint, @t bigint, @maxColID smallint,@procNameLength int
select @maxColID = max(subobjid) FROM
sys.sysobjvalues WHERE objid = object_id(@procedure)
--select @maxColID as 'Rows in sys.sysobjvalues'
select @procNameLength = datalength(@procedure) + 29
DECLARE @real_01 nvarchar(max)
DECLARE @fake_01 nvarchar(max)
DECLARE @fake_encrypt_01 nvarchar(max)
DECLARE @real_decrypt_01 nvarchar(max),@real_decrypt_01a nvarchar(max)
declare @objtype varchar(2),@ParentName nvarchar(max)
select @real_decrypt_01a = ''
--提取对象的类型如是存储过程还是函数,如果是触发器,还要得到其父对象的名称
select @objtype=type,@parentname=object_name(parent_object_id)
from sys.objects where [object_id]=object_id(@procedure)
-- 从sys.sysobjvalues里提出加密的imageval记录
SET @real_01=(SELECT top 1 imageval FROM sys.sysobjvalues WHERE objid =
object_id(@procedure) and valclass = 1 order by subobjid)

--创建一个临时表
create table #output ( [ident] [int] IDENTITY (1, 1) NOT NULL ,
[real_decrypt] NVARCHAR(MAX) )
--开始一个事务,稍后回滚
BEGIN TRAN
--更改原始的存储过程,用短横线替换
if @objtype='P'
  SET @fake_01='ALTER PROCEDURE '+ @procedure +' WITH ENCRYPTION AS select 1
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
else if @objtype='FN'
  SET @fake_01='ALTER FUNCTION '+ @procedure +'() RETURNS INT WITH ENCRYPTION AS BEGIN RETURN 1
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/ END'
else if @objtype='V'
  SET @fake_01='ALTER view '+ @procedure +' WITH ENCRYPTION AS select 1 as col
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
else if @objtype='TR'
  SET @fake_01='ALTER trigger '+ @procedure +' ON '+@parentname+'WITH ENCRYPTION AFTER INSERT AS RAISERROR (''N'',16,10)
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
EXECUTE (@fake_01)
--从sys.sysobjvalues里提出加密的假的
SET @fake_encrypt_01=(SELECT top 1 imageval FROM sys.sysobjvalues WHERE objid =
object_id(@procedure) and valclass = 1 order by subobjid )
if @objtype='P'
  SET @fake_01='Create PROCEDURE '+ @procedure +' WITH ENCRYPTION AS select 1
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
else if @objtype='FN'
  SET @fake_01='CREATE FUNCTION '+ @procedure +'() RETURNS INT WITH ENCRYPTION AS BEGIN RETURN 1
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/ END'
else if @objtype='V'
  SET @fake_01='Create view '+ @procedure +' WITH ENCRYPTION AS select 1 as col
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
else if @objtype='TR'
  SET @fake_01='Create trigger '+ @procedure +' ON '+@parentname+'WITH ENCRYPTION AFTER INSERT AS RAISERROR (''N'',16,10)
  /**//*'+REPLICATE(cast('*'as nvarchar(max)), datalength(@real_01) /2 - @procNameLength)+'*/'
--开始计数
SET @intProcSpace=1
--使用字符填充临时变量
SET @real_decrypt_01 = replicate(cast('A'as nvarchar(max)), (datalength(@real_01) /2 ))
--循环设置每一个变量,创建真正的变量
--每次一个字节
SET @intProcSpace=1
--如有必要,遍历每个@real_xx变量并解密
WHILE @intProcSpace<=(datalength(@real_01)/2)
BEGIN
--真的和假的和加密的假的进行异或处理
SET @real_decrypt_01 = stuff(@real_decrypt_01, @intProcSpace, 1,
NCHAR(UNICODE(substring(@real_01, @intProcSpace, 1)) ^
(UNICODE(substring(@fake_01, @intProcSpace, 1)) ^
UNICODE(substring(@fake_encrypt_01, @intProcSpace, 1)))))
SET @intProcSpace=@intProcSpace+1
END

--通过sp_helptext逻辑向表#output里插入变量
insert #output (real_decrypt) select @real_decrypt_01
--select real_decrypt AS '#output chek' from #output --测试
-- -------------------------------------
--开始从sp_helptext提取
-- -------------------------------------
declare @dbname sysname
,@BlankSpaceAdded int
,@BasePos int
,@CurrentPos int
,@TextLength int
,@LineId int
,@AddOnLen int
,@LFCR int --回车换行的长度
,@DefinedLength int
,@SyscomText nvarchar(max)
,@Line nvarchar(255)
Select @DefinedLength = 255
SELECT @BlankSpaceAdded = 0 --跟踪行结束的空格。注意Len函数忽略了多余的空格
CREATE TABLE #CommentText
(LineId int
,Text nvarchar(255) collate database_default)
--使用#output代替sys.sysobjvalues
DECLARE ms_crs_syscom CURSOR LOCAL
FOR SELECT real_decrypt from #output
ORDER BY ident
FOR READ ONLY
--获取文本
SELECT @LFCR = 2
SELECT @LineId = 1
OPEN ms_crs_syscom
FETCH NEXT FROM ms_crs_syscom into @SyscomText
WHILE @@fetch_status >= 0
BEGIN
SELECT @BasePos = 1
SELECT @CurrentPos = 1
SELECT @TextLength = LEN(@SyscomText)
WHILE @CurrentPos != 0
BEGIN
--通过回车查找行的结束
SELECT @CurrentPos = CHARINDEX(char(13)+char(10), @SyscomText,
@BasePos)
--如果找到回车
IF @CurrentPos != 0
BEGIN
--如果@Lines的长度的新值比设置的大就插入@Lines目前的内容并继续
While (isnull(LEN(@Line),0) + @BlankSpaceAdded +
@CurrentPos-@BasePos + @LFCR) > @DefinedLength
BEGIN
SELECT @AddOnLen = @DefinedLength-(isnull(LEN(@Line),0) +
@BlankSpaceAdded)
INSERT #CommentText VALUES
( @LineId,
isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText,
@BasePos, @AddOnLen), N''))
SELECT @Line = NULL, @LineId = @LineId + 1,
@BasePos = @BasePos + @AddOnLen, @BlankSpaceAdded = 0
END
SELECT @Line = isnull(@Line, N'') +
isnull(SUBSTRING(@SyscomText, @BasePos, @CurrentPos-@BasePos + @LFCR), N'')
SELECT @BasePos = @CurrentPos+2
INSERT #CommentText VALUES( @LineId, @Line )
SELECT @LineId = @LineId + 1
SELECT @Line = NULL
END
ELSE
--如果回车没找到
BEGIN
IF @BasePos <= @TextLength
BEGIN
--如果@Lines长度的新值大于定义的长度
While (isnull(LEN(@Line),0) + @BlankSpaceAdded +
@TextLength-@BasePos+1 ) > @DefinedLength
BEGIN
SELECT @AddOnLen = @DefinedLength -
(isnull(LEN(@Line),0) + @BlankSpaceAdded)
INSERT #CommentText VALUES
( @LineId,
isnull(@Line, N'') + isnull(SUBSTRING(@SyscomText,
@BasePos, @AddOnLen), N''))
SELECT @Line = NULL, @LineId = @LineId + 1,
@BasePos = @BasePos + @AddOnLen, @BlankSpaceAdded =
0
END
SELECT @Line = isnull(@Line, N'') +
isnull(SUBSTRING(@SyscomText, @BasePos, @TextLength-@BasePos+1 ), N'')
if LEN(@Line) < @DefinedLength and charindex(' ',
@SyscomText, @TextLength+1 ) > 0
BEGIN
SELECT @Line = @Line + ' ', @BlankSpaceAdded = 1
END
END
END
END
FETCH NEXT FROM ms_crs_syscom into @SyscomText
END
IF @Line is NOT NULL
INSERT #CommentText VALUES( @LineId, @Line )
select Text from #CommentText order by LineId
CLOSE ms_crs_syscom
DEALLOCATE ms_crs_syscom
DROP TABLE #CommentText
-- -------------------------------------
--结束从sp_helptext提取
-- -------------------------------------
--删除用短横线创建的存储过程并重建原始的存储过程
ROLLBACK TRAN
DROP TABLE #output
go

别错把需求当市场

  创业团队经常弄混了「需求」与「市场」的差别,从根本上说,需求是需求,但市场的构成除了有需求存在,还得有供给,同时透过共识的价格交集而成交,方能形成市场。简单说,有需求未必能形成市场,那得看供给与价格;反过来说,只有供给而不存在需求,或者供给与需求具备但价格没有共识,市场也不存在。

  虽然是很简单的道理,但我还是经常发现多数团队并没有把重心摆在谈论「市场」,而是谈论「需求」,甚至连需求也没碰触到,只谈自己做了什么、想做什么,仿佛产品、服务做出来就卖得掉,这当然是比较不成熟的创业观点,但事实上多数团队就是如此。

  当局者迷是很正常的事,即便我自己创业过几次,每每听到不错的点子还是会瞬间陷入「过度放大」的迷思里,一下子以为可以接触的市场很大,可以满足的需求很多,但实际上根本就只有很少数的消费者才可能采用这个产品或服务,这当中最大的问题还不在于消费者少,而在于你根本不知道这群消费者在哪里。

  等到奋不顾身执行下去才恍然大悟,原来要搜寻出这群人得花非常多钱,然而业绩成长速度跟不上你的烧钱速度,自己都开始怀疑当初的想法是否真的有这么好,追本溯源来说还是老话那一句,只想到自己想做的,以为点子很好,但这都是供给端、制造端的思维,完全忽略了「需求」,更别提到底有没有存在那个你自以为存在的「市场」。

  举一个最近朋友的案例,一个多月前他偶然知道,原来自己某个远亲是在种苹果的,品质优良又可口,当他了解零售的苹果价格与生产端有不小的差距后,自己兴起了想直接跟远亲批苹果去卖的念头。他认为他有巨大的成本优势,透过网路去卖应该可以有不少的利润,于是跑来跟我聊他的点子可不可行。

  于是我问他是否知道苹果零售市场一年多大产值?市售苹果有几种?消费者多半都在哪里购买?是菜市场、大卖场、便利商店还是其他?分别是哪些人去买?买苹果的理由或需求是什么?不同品种的苹果大约落在什么价位?如果多数消费者在实体通路卖,那虚拟通路是加分还是减分?

  他听完我的问题,顿时愣了一下,不知道该怎么回答。不过他这样的情况还算是好的,因为至少「苹果零售市场」是存在的,也就是说最差的情况下,他就是去菜市场租个小摊位卖苹果,再怎么糟糕应该一天也能有个几百块进帐,划不划算就是另一回事,但很多团队是自己做了一个产品,却不知道最后应该跟谁收钱?哪些人会付钱?这就是因为没弄清楚到底最后该走向什么市场的原因。

  如果是我,我会先把上述的「市场」问题先弄清楚,接着才是思考应该怎么切入「苹果零售市场」。比方说,假设苹果零售市场一年有 50 亿的成交值,其中实体通路与虚拟通路大约是9:1,实体通路中菜市场、大卖场、便利商店各占1/3,网路与电视购物则是各1/2;菜市场购买的族群是婆婆妈妈,平均年龄 40 岁以上;大卖场则是以小家庭为主,便利商店则是 25 岁左右的 OL;以需求来说,妈妈们买苹果可能是给家人吃,或者新手妈妈是打成苹果泥给小 baby 吃;为了健康因素吃的可能占了 50%,为了加入沙拉当作正餐的因素可能占了 20%。

  分析完之后可能你最后卖的未必是苹果本身,而是选择卖苹果泥,切入苹果零售的网路市场,同时针对新手妈妈为销售对象,也因此产生了广告费该买什么关键字,或者该与有许多新手妈妈存在、活跃的网站策略合作,部落客也专找有影响力的新手妈妈撰写专文推荐。

  这里我想说的重点是「顺序」,就是你得先有「市场」为基础的分析,于是有了某种商业出发点,接着才去探讨消费者行为背后的需求,进而衍生出你可能可以做什么产品或服务,去满足这个需求,进而切入该市场。这样就能确保你做出来的东西可以对应到某个市场去,而不是做出来了却不知道自己应该怎么走下去。

  这道理不会只用在卖苹果,卖任何东西都一样,必然会指引你走向某个特定的市场--「有供、有需、有共识价格的市场」,而不是你自以为会有的需求。诚如我所说,Google 并不是经营一个「搜索市场」,因为没有人为搜索付费,这是一个只有供给没有付费的「需求」,同理 Facebook 是经营一个「社交网站」而非「社交市场」,但他们两者都从「(网路)广告市场」赚钱,而广告市场老早就存在,至少网路兴起之前,多数广告是买在报纸、杂志跟电视。

  因此,无论你的创业多创新,你的收入来源最终必然指向某个「市场」,而且通常是既有的、存在许久的市场。历史上,只有非常非常少数的发明可以创造「新市场」,你会不会是那个引领潮流的人要看你的本事,但如果你没什么资源,或者创业经验还不够,我会建议你尽可能别去做「创造市场」的创业路,而是去做一个可以从既有市场赚到钱的创业路,应该会比较妥当一些。即便你认为自己的产品很创新,但产品的创新未必能真正创造新市场,因为最终它还是得回归到能解决某些问题,对应某个市场,你才赚得到钱。

  总而言之,别错把需求当市场,需求只是市场的一部份,有人真正愿意为你所做的事情掏钱才是商业的基础,也是你创业的根本之道。胜兵先胜而后求战,败兵往往是先战而后求胜,虽然看起来只是次序不同,但其中风险与经营智慧却是天壤之别。

如何查询本月信用卡账单金额

以下是各银行查询信用卡账单的方式,可以选择您最适合的方式进行查询(以下联系方式仅供参考,以银行公告为准)

银行名称 客服热线 人工服务 账单查询
兴业银行 95561 拨打95561-按1-按8-人工服务 发送30+卡号末四位到95561
中信银行 4008895558 拨打4008895558-按1-身份证号和查询密码-按0-人工服务 发送ZD+卡号末四位到106980095558
平安银行 95511 拨打95511-按2-按9-身份证和查询密码-人工服务 移动用户发送8602至95511
深发展银行 95511 拨打95511-按2-按9-身份证和查询密码-人工服务 移动用户发送8602至95511
农业银行 4006695599 拨打4006695599-按1-按0-身份证号-人工服务 暂不支持
招商银行 4008205555 拨打4008205555-身份证好和查询密码-按9-人工服务 移动用户发送#ZD到1065795555
工商银行 4006695588 拨打4006695588-按2-按2-人工服务 发送CXZD+#卡号#+短信密码发送到95588
交通银行 4008009888 拨打4008009888-按1-身份证号和查询密码-按0-按6-人工 发送CC账单#卡号末四位到95559
广发银行 95508 拨打95508-按1中文服务-查询密码-按4-按0-人工服务 发送XZD+卡号末四位+查询年月(YYYYMM)到95508
建设银行 4008200588 拨打4008200588-输入身份证号和查询密码-按0-人工服务 发送CCZD#卡号末四位到95533
民生银行 4006695568 拨打4006695568-按2-查询密码-按1-按0-人工服务 移动用户发送ZD+卡号末四位到106902895568
中国银行 4006695566 拨打4006695566-按1-按0-身份证号-人工服务 暂不支持
光大银行 4008195595 拨打4008195595-按0-按1-卡号和查询密码-人工服务 发送账单+卡号后四位到95595
浦发银行 4008208788 拨打4008208788-按1-按0-身份证号-查询密码-人工服务 发送ZDCX+空格+卡号末四位到95528
江苏银行 4008696098 拨打4008696098-按1-按0-人工服务 暂不支持
宁波银行 962528 拨打962528-按2-按0-身份证号码-人工服务 移动用户发送ZD+卡号后四位到1065752574896528
上海银行 95594 拨打95594--按1--按0--人工服务 暂不支持
北京银行 4006601169 拨打4006601169-按0-人工服务 暂不支持
杭州银行 4008888508 拨打4008888508-按2-按6-身份证号或者卡号-人工服务 暂不支持

网站是如何跟踪监视你的

某些监视方法是比较容易想到的,比如,当你登录网站的时候,它就可以知道你是谁了。但是这些网络监视系统是如何通过你的上网行为记录你的个人信息呢

广告系统经常通过追踪用户行为的方法来建立用户信息库,以定位谁是目标客户。如果你曾经访问过某个商业网站,之后不久你又在其他网站看到了这个商业网站的广告,那么,这个广告系统可能已经在工作了。

IP 地址

IP地址是确认用户身份的最基本的方法。现今,在家或者办公室,你电脑很可能与你的其他网络设备共享同一个IP地址。从你的IP地址,网站可以大致确定你的地理位置 —— 还不能精确到街道,但是一般能确认你所在城市或者区域。你可能见过那些弹窗小广告通过显示你的地理位置来伪装自己,广告系统就是这么干的。IP地址可以变,并且可以被其他用户所共享,所以它并不是一个追踪单个用户的好方法。但是,IP可与本文介绍的其他技术相结合来确定你的地理位置。

image

HTTP Referrer

当你点击一个链接的时候,你的浏览器会加载这个页面,并且告诉这个网站你是从哪来的。打个比方,你单击了一个How-to Geek网站的一个指向外部网站的链接,那么这个网站会知道你是从How-to Geek的哪一篇文章点击进来的。这个信息是被存储在Http referrer信息头中。当你下载当前页面的内容的时候,http referrer也会被发送。例如,一个网站有广告或者跟踪脚本,那么你的浏览器会告诉这个广告商或者这个网络监视系统,你正在浏览哪一个网页!所谓的”web bug”是很小的,由单个像素组成的不可见的图片,它利用HTTP referrer去偷偷的监视你。它们也被用来监视你所打开的邮件,前提是你的邮件客户端会下载图片。

Cookies 和 跟踪脚本

Cookies是一些信息片段,网站可以将它们存储在你的浏览器上。它有许多正当的用途——比如,当你登陆你的网络银行,cookie可以记录你的登录信息。当你改变对一个网站的设置,那么cookie也会将它记录下来,这样你的设置就可以一直在你浏览的过程中有效。
image1
Cookie也可以用来识别和记录你在某个网站上的行为。这并没有什么大的问题——这个网站可能想知道你在浏览什么网页,这样它就可以知道你体验如何。而真正有危险的是那些第三方的Cookie。

image2

尽管第三方cookie也有一些正当的用途,但是它们常常被广告系统用来监视你在不同网站的行为。许多网站——并不是大部分网站都会有第三方的广告和监视脚本。如果两个不同的网站有相同的广告或者监视系统,那么你浏览器上关于这两个网站的浏览历史就可以结合在一起被追踪和分析了。那些来自社交网站的脚本同样有追踪的功能。比如说你登录了Facebook,然后你浏览另一个网站,而这个网站上有Facebook的那个“Like”(点赞)按钮,那么Facebook就可以知道你浏览了这个网站。Facebook保存了一个cookie去记录你的登录状态,这样这个Like按钮(它本身就是脚本的一部分)就可以知道你是谁了。

Super Cookies

你可以清空你的cookies——事实上,我们这里有一篇专门的教程教你如何清空浏览器的cookies。然而,清空cookies这招已经不怎么起作用了——“super cookies”正在兴起。super cookie的一个例子就是evercookie。super cookies如evercookie会把cookie数据存在不同的地方–比如,flash的cookie,Silverlight storage,浏览器历史记录,或者说html5的本地存储中。一个非常高明的记录用户的方法是,每次用户登录一个网站,网站都记录在一个很小的图片中记录一个特有的颜色。这些图片会被存放在用户的浏览器缓存中,这样一来,这个颜色就可以用来识别这个用户了。

当网站发觉你在某些地方删除了super cookie,那么它会利用其他的地方的存储的数据将这些信息恢复过来。例如,你可能清除了浏览器的cookies,但是你没有清除flash中的cookie,那么,这个网站会将flash中的cookie信息重新复制到你浏览器cookies中。这样来说super cookie的生命力是很强的。
image3

User Agent

每次你的浏览器链接一个网页的时候,它都会向网站发送User Agent信息。这些信息包括了你浏览器的信息和操作系统信息,它们会存储起来,并被广告系统利用来分析如何投放广告。如果想知道更多关于User Agent的信息,请参阅维基百科上的User Agent
image4

浏览器指纹

每一个浏览器实际上都具有自己的特征。网站可以检测你的操作系统类型、浏览器版本、安装的浏览器插件及其版本、操作系统的屏幕分辨率、下载的字体、所在时区和其他的信息。看吧,就算你禁用了浏览器cookie,那么也有其他信息来识别你的浏览器。

有个叫Panopticlick的网站可以告诉你这些信息是如何使用的。事实上,在110万人中,才会有一个人的浏览器跟你有相同的设置。

image5
当然了,肯定有其他的追踪技术。每年花在这技术的钱可不少,而且有许多人每天都在绞尽脑汁想出新招来追中你——evercookie的出现就是一项证据。

要想尽可能的在网上隐藏自己的身份,那么最好使用Tor网络来上网。


原文链接: Chris Hoffman 翻译: 极客范 - 起一个很长的没人用过的名字
译文链接: http://www.geekfan.net/4410/

2014年放假安排公布

李克强总理签署国务院第644号令,公布《国务院关于修改的决定》,自2014年1月1日起施行。

原标题:国务院办公厅关于2014年部分节假日安排的通知

国务院办公厅关于2014年 部分节假日安排的通知

国办发明电〔2013〕28号

各省、自治区、直辖市人民政府,国务院各部委、各直属机构:

经国务院批准,现将2014年元旦、春节、清明节、劳动节、端午节、中秋节和国庆节放假调休日期的具体安排通知如下。

一、元旦:1月1日放假1天。

二、春节:1月31日至2月6日放假调休,共7天。1月26日(星期日)、2月8日(星期六)上班。

三、清明节:4月5日放假,4月7日(星期一)补休。

四、劳动节:5月1日至3日放假调休,共3天。5月4日(星期日)上班。

五、端午节:6月2日放假,与周末连休。

六、中秋节:9月8日放假,与周末连休。

七、国庆节:10月1日至7日放假调休,共7天。9月28日(星期日)、10月11日(星期六)上班。

节假日期间,各地区、各部门要妥善安排好值班和安全、保卫等工作,遇有重大突发事件,要按规定及时报告并妥善处置,确保人民群众祥和平安度过节日假期。

国务院办公厅

2013年12月11日