📄 actioncompiler.cpp
字号:
#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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -