30 Console::println(
"Processing file: " + fileName);
31 vector<string> fileContent;
32 FileSystem::getInstance()->getContentAsStringArray(
".", fileName, fileContent);
34 auto symbolsMode =
false;
36 for (
auto i = 0; i < fileContent.size(); i++) {
37 auto line = fileContent[i];
38 line = StringTools::trim(line);
39 if (symbolsMode ==
false) {
40 if (StringTools::endsWith(line,
" public symbols") ==
true) {
45 if (line.empty() ==
true) {
48 lineStringTokenizer.
tokenize(line,
" ");
54 vector<string> newFileContent;
55 newFileContent.push_back(
"EXPORTS");
56 for (
const auto& symbol: symbols) newFileContent.push_back(
"\t" + symbol);
57 FileSystem::getInstance()->setContentFromStringArray(
".", fileName +
".def", newFileContent);
60 int main(
int argc,
char** argv)
62 Console::println(
string(
"msclib2dll ") + Version::getVersion());
63 Console::println(Version::getCopyright());
67 Console::println(
"Usage: msclib2dll path_to_file");
68 Console::println(
"Note: path_to_file can be obtained from dumpbin /LINKERMEMBER xyz.lib");
69 Application::exit(Application::EXITCODE_FAILURE);
75 Application::exit(Application::EXITCODE_SUCCESS);
Application base class, please make sure to allocate application on heap to have correct application ...
File system singleton class.
const string & nextToken()
void tokenize(const string &str, const string &delimiters, bool emptyTokens=false)
Tokenize.
int main(int argc, char **argv)
void parseHpp(const string &fileName)
std::exception Exception
Exception base class.