Loading [MathJax]/jax/input/TeX/config.js
社区首页 >问答首页 >如何使用PHP脚本提取TNEF winmail.dat?

如何使用PHP脚本提取TNEF winmail.dat?
EN

Stack Overflow用户
提问于 2013-05-28 13:03:35
回答 3查看 4.2K关注 0票数 3

我正在开发一个功能,将读取邮箱中的所有电子邮件,并将处理附件文件。

当从Outlook发送任何邮件时,其附件将另存为winmail.dat。请注意,我已经有使用IMAP PHP下载附件的代码。我的电子邮件附件存储在服务器上我的代码库中的一个文件夹中。我需要将winmail.dat附件提取为其原始格式。到目前为止,我遇到的解决方案都需要手动完成,比如提供提取文件的在线工具,或者使我们能够转换.DAT文件的软件。

但我需要使用脚本或任何自动化过程(如cron或其他)进行提取。我使用的是Linux - centos 5.7服务器。

有没有什么库或其他方法可以让我的应用程序“解压缩”这些文件,这样我就可以获得附件,而不需要逐个手动完成?

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-05-29 11:29:09

http://pkgs.org/centos-5-rhel-5/flexbox-x86_64/tnef-1.4.7-1.x86_64.rpm.html下载rpm包

使用包: tnef-1.4.7-1.x86_64.rpm

安装:

复制到一个文件夹并安装rpm tnef包-

代码语言:javascript
代码运行次数:0
复制
rpm -ivh /path-of-downloaded-package/tnef-1.4.7-1.x86_64.rpm

要提取附件winmail.dat,请执行以下操作:

转到您要提取附件文件的目录中。

代码语言:javascript
代码运行次数:0
复制
cd /path-to-extract-attachment/

运行命令:

代码语言:javascript
代码运行次数:0
复制
tnef /path-of-attachment/winmail.dat

相当于

的PHP脚本:

代码语言:javascript
代码运行次数:0
复制
chdir('/path-to-extract-attachment/');

$cmd = "tnef /path-of-attachment/winmail.dat";
shell_exec($cmd);
票数 4
EN

Stack Overflow用户

发布于 2020-02-19 18:25:03

有一个简单的库:https://github.com/QualityUnit/TNEFDecoder

您可以使用它轻松地从TNEF文件中提取附件。

它没有很好的文档,但它很简单,在稍微深入代码之后,你应该能够使用它。使用composer可以很容易地包含它。

它是TNEF解码算法的纯PHP实现,它是从旧的Squirrelmail插件中提取的,并移植到与PHP 7.4兼容

票数 2
EN

Stack Overflow用户

发布于 2013-05-29 10:10:06

我感受到了您的痛苦;处理无视现有的广泛建立的标准的专有系统是痛苦的。wikipedia page on TNEF提供了一系列旨在提供解码器的库。祝好运。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16792842

复制
相关文章
Microsoft Outlook 爆严重漏洞,可允许远程代码执行
近期,微软发布了一系列补丁,修复了自身产品中一些影响广泛以及关键的Bug,其中包括更新了微软Office套件版本,解决了其中的部分安全问题。而安全专家研究发现,其中的一个漏洞(cve-2015-6172),攻击者通过以“特定打包的微软Office文件”作为附件,由Outlook发送邮件给目标用户,可允许远程代码执行。 来自微软的安全公告提及: 此次更新解决了微软办公软件的安全漏洞。其中威胁级别最高的漏洞,可允许远程代码执行。如果用户打开一个专门制作的微软办公文件,攻击者可以利用该漏洞在当前用户目录下运
FB客服
2018/02/07
3.3K0
Microsoft Outlook 爆严重漏洞,可允许远程代码执行
【笔记php】如何使用PHP从JSON提取数据?
2022年8月26日16点36分 如何使用PHP从JSON提取数据? 不多bb,直接上示例 一 $Json = ' { "type": "fish9.cn", "name": "fish9.cn" }'; $fish = Json_decode($Json,true); echo $fish["type"]; //结果fish9.cn 二 $Json = '{ "type":"fish9.cn", "name":"fish9.cn", "daily":[{
吃猫的鱼Code
2023/02/02
4.9K0
如何使用Linux的Crontab执行PHP脚本
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现。但这两种方法都不太可靠,不稳定。我们可以借助Linux的Crontab工具来稳定可靠地触发PHP执行任务。 下面介绍Crontab的两种方法。 一、在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本。 每一小时执行myscript.php如下: # crontab -e 00 * * *
wangxl
2018/03/07
2.4K0
如何使用脚本测试PHP MySQL数据库连接
MySQL是一种流行的数据库管理系统,而PHP是适用于Web开发的服务器端脚本语言; 与Apache或Nginx HTTP服务器一起,是LAMP ( Linux Apache MySQL / MariaDB PHP )或LEMP ( Linux Nginx MySQL / MariaDB PHP )的不同组件。
子润先生
2021/06/15
9.3K0
提取APK图标脚本
最近同学换手机,看不爽3×0那个ui,打算自己做主题,找我提取Flyme自带的图标。嘛,虽然不是啥复杂的东西,手动也能解决,不过一旦图标多起来就受不了了。于是我就写了个Python脚本批量处理。
KAAAsS
2022/01/14
1K0
python小脚本-提取邮箱
        使用python正则表达式,在一堆各种字符中提取是邮箱名的字符串。
py3study
2020/01/09
1.2K0
使用 eAccelerator 加快 PHP 脚本执行效率
eAccelerator 是一个免费开源的 PHP 加速、优化、编译和动态缓存的项目,它可以通过缓存 PHP 代码编译后的结果来提高 PHP 脚本的性能,使得一向很复杂和离我们很远的 PHP 脚本编译问题完全得到解决。通过使用 eAccelerator,可以优化 PHP 代码执行速度,降低服务器负载。PHP 应用执行速度最高可达10倍。
Denis
2023/04/14
5660
使用 eAccelerator 加快 PHP 脚本执行效率
使用PHP脚本来写Daemon程序
这又是一个有趣的概念,daemon在英语中是"精灵"的意思,就像我们经常在迪斯尼动画里见到的那些,有些会飞,有些不会,经常围着动画片的主人公转来转去,啰里啰唆地提一些忠告,时不时倒霉地撞在柱子上,有时候还会想出一些小小的花招,把主人公从敌人手中救出来,正因如此,daemon有时也被译作"守护神"。所以,daemon进程在国内也有两种译法,有些人译作"精灵进程",有些人译作"守护进程",这两种称呼的出现频率都很高。
大江小浪
2018/07/25
9500
linux 如何关闭正在执行的php脚本
1. 如果不是后台执行,直接ctrl+c 就终止执行 2. 如果是后台执行 首先执行:sudo ps –ef|grep php
全栈程序员站长
2022/07/11
2.5K0
如何使用QueenSono从ICMP提取数据
QueenSono是一款针对ICMP协议的数据提取工具,该工具基于Golang开发,并且只依赖于ICMP协议不受监控这一事实实现其功能。除此之外,该工具也可以用于基本的ICMP检查,或绕过某些身份验证机制,比如说许多公共Wi-Fi在连接到Wi-Fi(如机场Wi-Fi)后用于对用户进行身份验证。
FB客服
2021/10/22
2.6K0
Pyhon制作脚本提取日志数据
可能是java和lua的基础,这门语言学起来莫名的快,安装环境看了半天基础语法就开始写脚本了。
深雾
2020/08/15
6090
Pyhon制作脚本提取日志数据
使用php-js-ext在PHP内解析javascript脚本
当你在因个人兴趣爱好而开发PHP程序时,面对可以达到你的目的却长达千行以上的js脚本,你有精力去用php重写它么?想用PHP模拟用户行为么?但却遇到js泛滥的站点……一个不为人所知的php扩展项目可以满足这些需求,这个扩展的目的就是在php内解释javascript。 项目主页 http://aurore.net/projects/php-js/ php-js-ext是mozilla javascript解释器和php之间的一座桥梁,因此我们除了需要下载最后版本为0.1.2的php-js-ext,还需要下载
用户1272546
2018/06/04
2.8K0
使用php脚本查看已开启的扩展
php安装时会将扩展包编译进去,对于一个正在运行中的数据库,查看php的扩展开启状况,
码农编程进阶笔记
2022/08/18
3.2K0
使用php脚本查看已开启的扩展
使用PHP脚本创建MySQL 数据表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
用户9239730
2021/11/29
3K0
php安装脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 6
dogfei
2020/07/31
1K0
PHP如何使用Redis
一个string类型的field和value的映射表,特别适合用于存储对象。每个 hash 可以存储 2的32次方 - 1 键值对(40多亿) hash表相当于 redis存储 key => value 中的key, 表内容相当于 value
用户1349575
2022/02/08
9880
RAR Extractor Max for Mac(mac压缩软件)
RAR Extractor Max Mac版是一款mac压缩软件,支持非归档RAR,winmail.dat,ZIP,7z,tbz,sti,tar,xar,lha,lzh,hqx,bin,bz2,bzip2,bz,xz,iso,cid,nrg,mdf,taz,lzma,exe 等。
Mac软件分享
2022/07/27
9830
RAR Extractor Max for Mac(mac压缩软件)
Apache下如何禁止指定目录运行PHP脚本
网站程序的上传目录通常是不需要PHP执行解释权限,通过限制目录的PHP执行权限可以提网站的安全性,减少被攻击的机率。
用户7657330
2020/08/14
1.2K0
php归档格式:phar文件详解(创建、使用、解包还原提取)
转载一篇,突然遇到一个冷知识,phar的东东,貌似和jar、war是一种鬼。 重点使用一下下面这个东东,就能解包出来东东了。 $phar = new Phar('lib/yunke.phar', 0);   $phar->setAlias ( "yun.phar");  https://blog.csdn.net/u011474028/article/details/54973571 一个php应用程序往往是由多个文件构成的,如果能把他们集中为一个文件来分发和运行是很方便的,这样的列子有很多,比如在wi
landv
2018/05/24
1.9K0
点击加载更多

相似问题

如何检测消息体是否为TNEF格式(winmail.dat)?

13

打开Winmail.dat文件时TNEF签名无效

13

C#:MailBee:使用winmail.dat的tnef实用程序卸载tnef中的附件

230

防止Outlook用VBA或C#发送winmail.dat (TNEF)

113

提取winmail.dat信息而不是附件

19
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文