http://www.cnblogs.com/devinlee/p/4565933.html
Delphi XE7 用indy开发微信公众平台所有功能,可刷阅读,可刷赞,可加推广(除微支付)

关注作者的微信公众平台,测试效果

包含微信公众平台的所有功能(除微支付)

示例代码:(如需要全部代码,请加作者微信:Leedege)

复制代码
function UpNews(Num: Integer; AccessToken: String): String;
var
J: TJSONObject;
N: array of TJSONObject;
Url: String;
temp: String;
i: Integer;
readnum, ad: TStringList;
begin
J := TJSONObject.Create;
readnum := TStringList.Create;
ad := TStringList.Create;
ad.LoadFromFile('ad.txt');
SetLength(N, Num);
try
J.AddPair('articles', TJSONArray.Create);
with J.GetValue('articles') as TJSONArray do
for i := 0 to Num - 1 do
begin
temp := TNewsMsg(NewsList.Items[i]^).Content;

if TNewsMsg(NewsList.Items[i]^).AddTop then
temp := TNewsMsg(NewsList.Items[i]^).adTop + temp;

readnum.LoadFromFile('readnum.txt');
if TNewsMsg(NewsList.Items[i]^).RefreshReadNum then
readnum.Text := StringReplace(readnum.Text, 'readNum',
TNewsMsg(NewsList.Items[i]^).readnum, [rfReplaceAll]);

if TNewsMsg(NewsList.Items[i]^).RefreshLikeNum then
readnum.Text := StringReplace(readnum.Text, 'likeNum">',
TNewsMsg(NewsList.Items[i]^).LikeNum, [rfReplaceAll]);

if TNewsMsg(NewsList.Items[i]^).SourceURL '' then
readnum.Text := StringReplace(readnum.Text, 'href=""',
Format('href="%s"', [TNewsMsg(NewsList.Items[i]^).SourceURL]),
[rfReplaceAll]);

temp := temp + readnum.Text;
readnum.Clear;
if TNewsMsg(NewsList.Items[i]^).AddBottom then
temp := temp + ad.Text + TNewsMsg(NewsList.Items[i]^).adBottom;

N[i] := TJSONObject.Create;
N[i].AddPair('thumb_media_id', UpMedia(AccessToken, 'image',
TNewsMsg(NewsList.Items[i]^).CoverFile));
N[i].AddPair('author', TNewsMsg(NewsList.Items[i]^).Author);
N[i].AddPair('title', TNewsMsg(NewsList.Items[i]^).Title);
N[i].AddPair('content_source_url', '');
N[i].AddPair('content', temp);
N[i].AddPair('digest', TNewsMsg(NewsList.Items[i]^).Digest);
N[i].AddPair('show_cover_pic', TNewsMsg(NewsList.Items[i]^)
.ShowCover.ToString);
Add(N[i]);
temp := '';
end;
Url := Format(UpNewsUrl, [AccessToken]);
temp := PostMethod(Url, UTF8Encode(J.ToString), 1);
J := TJSONObject.ParseJSONValue(temp) as TJSONObject;
if J.Count > 0 then
Result := J.GetValue('media_id').Value;
finally
J.Free;
readnum.Free;
ad.Free;
end;
end;
复制代码
作者微信:Leedege

Delphi XE7 用indy开发微信公众平台所有功能,可刷阅读,可刷赞,可加推广(除微支付)的更多相关文章

  1. Delphi XE7 用indy开发微信公众平台所有功能(10篇博客)

    http://www.cnblogs.com/devinlee/p/4282498.html http://www.cnblogs.com/devinlee/p/4565933.html

  2. [c#]asp.net开发微信公众平台(1)数据库设计

    开发微信公众平台之前,先去微信官方了解下大概的情况 这里:http://mp.weixin.qq.com/wiki/index.php :看了之后心里大致有数了,开始设计数据库,尽可能的考虑,未考虑到 ...

  3. [C#]asp.net开发微信公众平台----目录汇总-持续更新

    1.[c#]asp.net微信公众平台开发(1)数据库设计 2.[c#]asp.net微信公众平台开发(2)多层架构框架搭建和入口实现 3.[c#]asp.net微信公众平台开发(3)微信消息封装及反 ...

  4. [c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单

    前7篇把最基础的消息接收和回复全做完了,  也把高级接口的入口和分拆处理写好了空方法,  此篇接着介绍微信的9大高级接口, 并着重讲解其中的自定义菜单. 微信9大接口为: 1.语音识别接口 2.客服接 ...

  5. [c#]asp.net开发微信公众平台(7)前6篇的整体框架demo源码

    这里给出的demo是具备整体框架的微信公众平台源码, 所谓demo就是拿过去就可以直接演示使用的东西,  当然不会具备非常详细的具体到业务层面.数据层面的东西, 每个人都可以在此基础上自由发挥,  只 ...

  6. [c#]asp.net开发微信公众平台(6)阶段总结、服务搭建、接入

    经过前5篇,跟着一步步来的话,任何人都能搭建好一个能处理各种微信消息的框架了,总结一下最容易忽略的问题: 1.文本消息中可以使用换行符\n    : 2.微信发来的消息中带的那个长整型的时间,我们完全 ...

  7. [c#]asp.net开发微信公众平台(5)微信图文消息

    上篇已经成功响应了关注事件,也实现了文本消息的发送,这篇开始图文消息处理, 微信中最常用的消息类型就是图文消息了,因为它图文并茂,最能表达信息. 图文消息在微信中的接口定义如下: <xml> ...

  8. C#开发微信公众平台-就这么简单(附Demo)转载

    C#开发微信公众平台-就这么简单(附Demo)  来源:https://www.cnblogs.com/xishuai/p/3625859.html#!comments 写在前面 阅读目录: 服务号和 ...

  9. 使用Java开发微信公众平台(二)——消息的接收与响应

    上一篇文章(http://www.jerehedu.com/fenxiang/171807_for_detail.htm )中,我们学习了使用Java语言开发微信公众平台的第一部分——环境搭建与开发接 ...

随机推荐

  1. Eclipse生成jar文件

    很多人都不知道怎么在Eclipse下生成jar文件,或者生成了jar文件后又老是用不了,总是会收到 Exception in thread "main" Java.lang.NoC ...

  2. eclipise快捷键,留给以后备用

    快捷键无效解决办法: 1.考虑是否被其他应用占用,如QQ,QQ音乐,千千动听等 2.在eclispe查看是否被修改:Window->Preferences->General->Key ...

  3. 第八章 高级搜索树 (xa1)红黑树:动机

  4. Python反转

    1切片 s="svdfbffdbdf" a=s[::-1] 2入栈出栈 入栈之后再出栈正好就是了 3reverse 这个函数是列表的....你要先把str转成list list-& ...

  5. 【校招面试 之 网络】第1题 TCP和UDP

    TCP UDP1.TCP与UDP基本区别  (1)基于连接与无连接  (2)TCP要求系统资源较多,UDP较少:   (3)UDP程序结构较简单(头只有8个字节:源端口号.目标端口号.长度.差错)   ...

  6. day11:vcp考试

    Q201. Which two options are available in the Virtual Machine Component Protection (VMCP) setting Res ...

  7. Docker commit 制作weblogic镜像

    第一:前提条件 1.本机必须已经安装了docker 容器 2.pull 一个基础的镜像  如图:rastasheep/ubuntu-sshd 第二:利用docker commit  命令 将容器的状态 ...

  8. DB2数据库常用命令数据库学习

    DB2数据库常用命令数据库学习你可以用 get snapshot for locks on XXX 看是那个表锁了,再从相关的操作去查原因吧 db2pd -d 库名 -locks和db2pd -d 库 ...

  9. mysql thread_cache 和 thread_pool 之间的关系

    线程池是Mysql5.6的一个核心功能,对 于服务器应用而言,无论是web应用服务还是DB服务,高并发请求始终是一个绕不开的话题.当有大量请求并发访问时,一定伴随着资源的不断创建和释放,导 致资源利用 ...

  10. 04 存储库之mongodb

    MongoDB   一 简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库1.易用性 MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库.不采用 ...