# 【Update.dll】辅助动画效果的实现 - 第11页 - Rainmeter插件与测试 - 雨滴社区 - Powered by Discuz!
 找回密码
 点击注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: suixin812

[插件与脚本] 【Update.dll】辅助动画效果的实现

  [复制链接]

签到天数: 38 天

[LV.5]常住居民I

发表于 2014-8-25 12:01:03 | 显示全部楼层
本帖最后由 IZZZZZI 于 2014-8-25 17:26 编辑
IZZZZZI 发表于 2014-8-24 10:19
等不及了自己改了改,风风你考虑一下吧,Bang名字你自己取合适的
以前写皮肤百般迁就插件,现在自己会写插 ...

我已经改好了。。代码在上面。。可是你不考虑一下加进你的插件里再更新一个版本么。。分支太多会乱。。。好纠结。。


还是我编译好再给你?版本号怎么填?ProjectGuid怎么破?

话说Terminate是不是有点多余?measure->stopLooping=true时线程就以最好的方式直接退出了啊。。
反倒是CloseHandle没有,每次新建线程会消耗句柄资源,不知道我理解的对不对
要不我按自己的理解整个改一下,还是你问问大神们确定一下?
回复

使用道具 举报

签到天数: 38 天

[LV.5]常住居民I

发表于 2014-8-24 10:19:16 | 显示全部楼层
本帖最后由 IZZZZZI 于 2014-8-25 17:08 编辑

等不及了自己改了改,风风你考虑一下吧,Bang名字你自己取合适的
以前写皮肤百般迁就插件,现在自己会写插件了总想在上面动手脚。。。还有你那个COPYRIGHT的符号不考虑用真的么。。© 2014 - 编码另存为 Unicode就行

struct Measure
{
        Measure() :
                stopLooping(true),
   。。。。。。。。
}

PLUGIN_EXPORT void ExecuteBang(void* data, LPCWSTR args)
{
        Measure* measure = (Measure*)data;
        if (!_wcsicmp(args, L"Start"))
        {
                measure->StartThread();
        }
        else if (!_wcsicmp(args, L"Continue"))
        {
                if (measure->stopLooping)
                {
                        measure->StartThread();
                }
        }
        else if (!_wcsicmp(args, L"Stop"))
        {
                measure->stopLooping = true;
        }
        else if (!_wcsicmp(args, L"Terminate"))
        {
                if (measure->m_UpdateThread)
                {
                        TerminateThread(measure->m_UpdateThread, 0);
                }
                measure->counting = 0.0;
        }
        else
        {
                std::wstring sOption = args;
                size_t pos = sOption.find(' ');

                if (pos != -1)
                {
                        std::wstring sBang = sOption.substr(0, pos);
                        sOption.erase(0, pos + 1);

                        if (_wcsicmp(sBang.c_str(), L"SetValue") == 0)
                        {
                                int i = 0;
                                if (swscanf_s(sOption.c_str(), L"%d", &i))
                                {
                                        i = i < 0 ? 0 : i;
                                        measure->counting = i;
                                }
                        }
                }
        }
}

点评

你来改好了。  发表于 2014-8-25 10:16
回复

使用道具 举报

签到天数: 38 天

[LV.5]常住居民I

发表于 2014-8-23 23:59:18 | 显示全部楼层
风风能不能考虑一个非重置的类Start Bang?
比如 [!CommandMeasure MeasureUpdate Start] 无论 MeasureUpdate 是不是在运行过程中都会强制清零并重新读取,我希望有个在运行中则不干涉,并允许我重设counting值的 Bang ,没在运行则运行的类 Start Bang。。。

感觉实现不会很麻烦
原作者能更新就最好啦
回复

使用道具 举报

签到天数: 127 天

[LV.7]常住居民III

发表于 2014-8-22 19:50:40 | 显示全部楼层
我自行车被偷了.....我所有的动力都被一下子抽走了。呜呜呜呜....

点评

。。。  发表于 2014-8-24 17:29
回复

使用道具 举报

签到天数: 127 天

[LV.7]常住居民III

发表于 2014-8-22 15:53:57 | 显示全部楼层
还是算了。_(:3」∠)_

点评

不要这么轻易就放弃了少年  发表于 2014-8-22 16:56
回复

使用道具 举报

签到天数: 38 天

[LV.5]常住居民I

发表于 2014-8-21 13:55:13 | 显示全部楼层

回帖奖励 +1 点活跃值

本帖最后由 IZZZZZI 于 2014-8-21 19:41 编辑

风风这个插件的源码能看一下么。。。很好奇怎么独立更新的
我是不是会错意了,官网那句
Only RmLog is thread-safe. No other function should be used outside of the main thread.

是不是说不开新线程的话 RmExecute(void* skin, LPCWSTR command)就可以随便用?





点评

没注意到这句话。只知道其他函数要用都要保留rm指针。这个插件就是创建了个新的线程,然后循环的RmExecute和Sleep。源代码我已经贴在楼上了,就在rmskin的旁边  发表于 2014-8-22 14:26
回复

使用道具 举报

签到天数: 2 天

[LV.1]初来乍到

发表于 2014-8-19 15:42:43 | 显示全部楼层
11111111111111111111111111
回复

使用道具 举报

签到天数: 127 天

[LV.7]常住居民III

发表于 2014-8-16 23:42:11 | 显示全部楼层
小哥!这货你没发到贴吧我可以转嘛??

点评

随意  发表于 2014-8-22 14:19
回复

使用道具 举报

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2014-8-3 15:39:07 | 显示全部楼层

回帖奖励 +1 点活跃值

看看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。



---------------------------------------------------------------------------------------------------------------------

280181564于2014-8-3 15:39补充以下内容:
看看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。看看

---------------------------------------------------------------------------------------------------------------------
回复

使用道具 举报

签到天数: 4070 天

[LV.Master]伴坛终老

发表于 2014-7-20 23:53:20 | 显示全部楼层
谢谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点击注册

本版积分规则

快速回复 返回顶部 返回列表