214550663 发表于 2008-4-9 12:57:27

谁懂C 代码的请进来一下

如果我有一段对文件解密的代码,我要怎么样才能解密文件?我要把FXB解密回N3FXBundle.请帮助我-----------------------------------------------------------------------------------------
//
// decode script file..
// 胶农赋飘 颇老 佬绊 秦籍矫糯...
//
#ifdef _N3TOOL
bool CN3FXBundle::DecodeScriptFile(const char* lpPathName)
{
FILE* stream = fopen(lpPathName, "r");
if(!stream) return false;
char szGamePathName;
char szDrive, szDir, szFName, szExt;
_splitpath(lpPathName, szDrive, szDir, szFName, szExt);
_makepath(szGamePathName, szDrive, szDir, szFName, "fxb");
CN3BaseFileAccess::FileNameSet(szGamePathName);
char szLine = "", szCommand = "", szBuf = { "", "", "", ""};
char* pResult = fgets(szLine, 512, stream);
sscanf(szLine, "%s %s %s %s %s", szCommand, szBuf, szBuf, szBuf, szBuf);
if(lstrcmpi(szCommand, "<n3fxbundle>"))
{
fclose(stream);
return false;
}
while(!feof(stream))
{
char* pResult = fgets(szLine, 512, stream);
if(pResult == NULL) continue;
ZeroMemory(szCommand,80);
ZeroMemory(szBuf,80);
ZeroMemory(szBuf,80);
ZeroMemory(szBuf,80);
ZeroMemory(szBuf,80);
sscanf(szLine, "%s %s %s %s %s", szCommand, szBuf, szBuf, szBuf, szBuf);
if(lstrcmpi(szCommand, "<name>")==0)
{
   m_strName = szBuf;
   continue;
}
if(lstrcmpi(szCommand, "<part>")==0)
{
   char szFullPath; //full path 父甸扁..
   sprintf(szFullPath,"%s%s",CN3Base::PathGet().c_str(), szBuf);
   
   FXPARTWITHSTARTTIME* pPart = new FXPARTWITHSTARTTIME;
   pPart->fStartTime = atof(szBuf);
   pPart->pPart = SetPart(szFullPath);
   if(!(pPart->pPart)) { delete pPart; continue; }
   for(int i=0;i<MAX_FX_PART;i++)
   {
    if(!m_pPart)
    {
   m_pPart = pPart;
   break;
    }
   }
   continue;   
}
if(lstrcmpi(szCommand, "<velocity>")==0)
{
   m_fVelocity = atof(szBuf);
   continue;
}
if(lstrcmpi(szCommand, "<depend_scale>")==0)
{
   if(lstrcmpi(szBuf, "true")==0) m_bDependScale = true;
   else m_bDependScale = false;
   continue;
}
if(lstrcmpi(szCommand, "<Static_Pos>")==0)
{
   if(lstrcmpi(szBuf, "true")==0) m_bStatic = true;
   else m_bStatic = false;
   continue;
}
}
fclose(stream);
Init();
return true;
}
#endif // end of _N3TOOL
页: [1]
查看完整版本: 谁懂C 代码的请进来一下