I am an Escalation Engineer

What does a Microsoft Escalation Engineer do?

“If an Enterprise has a problem with it, we are the ones that are the last level, code level support. We’re the last step between the Serviceability team within Windows that would then provide hot-fixes.

One of the most rewarding things about this job is that it’s never the same thing twice.

If you have a question about Windows, there is nobody that knows more about Windows than this team collectively.

Not only are you trying to solve the problems but you also need to sort of manage your customers. If you’re talking to the CTO you might be a hostage negotiator.”

I like this jacket that I received as becoming an EE.

Long Live NT Debugging

A Brief Introduction of Outlook’s Architecture

When you are troubleshooting Outlook connectivity issues, you may be exposed to a lot of concepts, such as MAPI, RPC, etc. If you ever wonder what they are and how they fit together to make Outlook connectivity possible, you need to have a good understanding of Outlook’s architecture.

In general, there are several layers when it comes to Outlook connecting to a messaging system (like Exchange Server):

– Outlook
– MAPI Layer
– Service Provider Layer
– Transport Provider
– IP / Ethernet Layer

The interfaces between layers are COM interfaces. Each layer exposes one or more COM interfaces as well as methods on these interfaces.

For Outlook connectivity to work, each layer needs to function as expected. I made a simple graph and hope that it helps with understanding of these layers.

EMSMDB32 is a dll file you may have seen a lot if you have ever diagnosed Outlook connectivity issues.

EMSMDB is short for Electronic Messaging System Microsoft Database Provider. As its name implies, it’s a database provider. As such, it enables reading and writing messages to an Exchange store.

Since Outlook 2007, EMSMDB is also an address book provider as well as a transport provider. In other words, Outlook calls the methods provided by EMSMDB32 to access an Exchange store, to open the address book, and to submit messages to Exchange server.

Internally, the role of EMSMDB32 is to receive the calls from upper MAPI layers and convert them into ROP calls that are understood by Exchange.

The common methods provided by EMSMDB32 are EcDoConnect, EcDoDisConnect, EcDoRpcExt2, EcRRegisterPushNotification. At transport layer (RPC), each of these methods has a corresponding Operation number (OPNUM). For the details on this relationship, see MSDN article http://msdn.microsoft.com/en-us/library/ee178982(v=exchg.80).aspx

That’s some basic stuff about EMSMDB. Until next time.

忘记Excel文件保护密码,怎么解?

公众号“中国黑客联盟”曾经发布过一个三分钟视频,名为“禁止别人复制你的Excel表格只需一步, 99%的人都不知道” 。大意是说,通过添加保护工作表密码,能够禁止别人复制单元格的内容。但是,这样保护以后真的就万无一失了吗?

忘记Excel文件保护密码,怎么解?

非也!对于IT专业人士来说,这个密码形同虚设。

网上有不少方法,比如用第三方软件 Office Password Remover, 又或者通过VBA的宏进行反复猜测,原理就是brute force. 但这些方法耗时不说,对于高版本Excel,比如Excel 2016没有什么卵用。其实,你无需任何专用破解工具,仅用解压缩工具(如WinRAR,或者7-Zip)就能轻松解除Excel工作表密码保护的办法。忘记了密码也不要紧!

具体步骤如下:

  1. 鼠标右键单击设置了工作表密码保护的xlsx文件 (注意如果是Excel 2007之前的文件,文件扩展名后缀是*.xls,如果要应用此法,请用Excel 2010或更新版本的Excel打开,另存为*.xlsx格式)
  2. 在弹出菜单中,选择“打开方式”,“选择另一个程序”
  3. 从列表中选择解压缩工具,比如7-zip file manager,也可以是WinRAR等其他解压缩工具。
  4. 依次点击进入 xl -> worksheets. 该文件夹中保存着一些以xml结尾的文件,比如sheet1.xml

    忘记Excel文件保护密码,怎么解?

    忘记Excel文件保护密码,怎么解?

  5. 右键单击该文件,选择编辑。默认使用记事本打开,其实任何其他的编辑器都可以

    忘记Excel文件保护密码,怎么解?

  6. 在sheet1.xml文件中搜索password

    忘记Excel文件保护密码,怎么解?

  7. 将<sheetProtection password=***> 整个字段删除,如上图蓝色部分所示,具体位置以尖括号为界。
  8. 保存修改后,选择“确定”
  9. 退出7-zip。重新在Excel中打开此工作表,这时您就可以任意复制,或者修改单元格内容了。