actioncompiler.cpp
来自「这是一个用VC++开发的flashsource端的程序」· C++ 代码 · 共 71 行
CPP
71 行
#include "actioncompiler.h"
class CompiledActions : public FlashActionRecord
{
char * data;
int len;
public:
CompiledActions(char *data, int len)
{
this->data = (char*)malloc(len);
memcpy(this->data, data, len);
this->len = len;
}
~CompiledActions()
{
free (data);
}
void Write(std::ostream &out)
{
out.write(data,len);
}
void Read(std::istream &in)
{
}
};
class ActionCompiler
{
int version;
public:
ActionCompiler(int version = 5)
{
this->version = version;
}
void Compile(char *script, std::stringstream &outputStream)
{
Buffer outputBuffer;
int success = 0;
if(version == 4)
{
swf4ParseInit(script,0);
success = swf4parse(&outputBuffer);
}
else if(version == 5)
{
swf5ParseInit(script,0);
success = swf5parse(&outputBuffer);
}
else
{
//throw Exception("Unsupported flash version");
}
if(success != 0)
{
//throw Exception("Output buffer is empty");
return;
}
outputStream.write(outputBuffer->buffer, bufferLength(outputBuffer));
destroyBuffer(outputBuffer);
}
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?