Challenge Overview
Project Overview
Styx Pseudo Translation command line tool takes Windows DLL/EXE as input and translates string resources included following specific rules. The output of the command line tool is a translated DLL/EXE.
Competition Task Overview
For this challenge, competitors need to make use of resources update APIs to translate string resources in the provided DLL. The translation rules are below:
- Do not modify placeholders and special escape characters
\n newline
%1 FormatMessage placeholder (handle all format strings listed at http://msdn.microsoft.com/en-us/library/windows/desktop/ms679351(v=vs.85).aspx)
- Replace characters, based on the following table:
a �� (U+0250 Latin Small Letter Turned A)
e �� (U+0258 Latin Small Letter Reversed E)
i �� (U+0268 Latin Small Letter I with stroke)
o �� (U+043E Cyrillic Small Letter O)
u �� (U+03CB Greek Small Letter Upsilon with diaeresis)
y �� (U+03D4 Greek Upsilon with diaeresis and hook Symbol)
t τ (U+03C4 Greek Small Letter Tau)
p ρ (U+03C1 Greek Small Letter Rho)
- Increase string length, based on original string length:
Up to 10 characters 300%
11-20 characters 200%
21-70 characters 180%
Over 71 characters 140%
- For example, a string that is originally 10 characters long should be increased to 30 characters long
- To increase string length, duplicate existing string as necessary (without duplicating any placeholders or special escape characters)
- Prefix and suffix string with the following characters:
Prefix: ������
Suffix: ������
- List of resource IDs to skip (write out exactly as in input)
The command line tool takes two parameters: input dll file full path, output dll file full path.
The resource IDs to skip can be configurable in a file
Technology Overview
- C#
- Windows API for updating resources in DLL/EXE
- http://msdn.microsoft.com/en-us/library/windows/desktop/ms648008(v=vs.85).aspx
- Resource editor (freeware) – for examining and verifying resources in DLL/EXE
- http://www.resedit.net
Final Submission Guidelines
Submission Deliverables
A complete list of deliverables can be viewed in the TopCoder Assembly competition Tutorial at: http://apps.topcoder.com/wiki/display/tc/Assembly+Competition+Tutorials
Below is an overview of the deliverables:
- Source Codes
- Deployment Guide