Автор Тема: Adobe Audition CS 5.5  (Прочитано 14819 раз)

Оффлайн Hellbringer

  • Новичок
  • *
  • Сообщений: 48
Adobe Audition CS 5.5
« : 28 Августа 2011, 22:51:05 »
Столкнулся с проблемой перевода Adobe Audition CS5.5. Единственные файлы, похожие по содержанию на те, которые надо переводить лежат в C:\Program Files (x86)\Adobe\Adobe Audition CS5.5\dict и называются au_zdictionary_en_US.txt, в зависимости от языка название может меняться. Попробовал скорректировать в документе слово 'File', сохранил, но результата нет, загружается по английски.

Оффлайн VIPer

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1063
Adobe Audition CS 5.5
« Ответ #1 : 29 Августа 2011, 14:30:02 »
Hellbringer, возможно, что файл au_zdictionary_en_US.txt используется как файл-образец для переводчиков, и соответственно, английские строки подгружаются не с него, а с самого ядра и сопутствующих DLL.

Несколько лет назад я переводил After Effects от Adobe с такой же системой локализации, и там в помине не было текстового файла *_en_US.txt. Английские строки загружались непосредственно с самого исполняемого файла и DLL. И чтобы произвести их парсинг в TXT, мне пришлось попросить одного человека написать вот такую программку:

© 2008 Entrase
void CAdobeStringExtractorDlg::OnBnClickedOpen()
{
CFileDialog dia(TRUE,NULL,NULL,OFN_HIDEREADONLY,"",NULL);
status_text = "Opening cancelled.";

if(dia.DoModal() == IDOK )
{
  CString s = dia.GetPathName();
  CFile f(s, CFile::modeRead);
  UINT filesize = f.GetLength();
  unsigned char* mf = new unsigned char[filesize];
  f.Read(mf, filesize);
  f.Close();

  CFileDialog sd(FALSE,NULL,NULL,OFN_OVERWRITEPROMPT,"",NULL);
  status_text = "Saving cancelled.";
  if (sd.DoModal() == IDOK) {
   unsigned int counter = 0;
   CFile sf(sd.GetPathName(), CFile::modeWrite | CFile::modeCreate);
   for (unsigned int i = 0; i < filesize; i++) {
    if (mf[i] == 0x24 && mf[i + 1] == 0x24 && mf[i + 2] == 0x24 && mf[i + 3] == 0x2f) {
     counter++;
     unsigned char zs = 0x22;
     sf.Write(&zs, sizeof(zs));
     for (unsigned int j = 0; mf[i + j] != 0; j++) {
      zs = mf[i + j];
      /*if (zs = 0x22) {
       unsigned char bslash = 0x5C;
       sf.Write(&bslash, sizeof(bslash));
      }*/
      sf.Write(&zs, sizeof(zs));
     }
     zs = 0x22;
     sf.Write(&zs, sizeof(zs));
     zs = 0x0D;
     sf.Write(&zs, sizeof(zs));
     zs = 0x0A;
     sf.Write(&zs, sizeof(zs));
    }
   }
   status_text.Format("Done. Total: %d", counter);
   //sf.Write(mf, filesize);
   sf.Close();
  }
  delete[] mf;
}
UpdateData(0);
}

Как Вам следует поступить: делайте перевод, например, под кодом fr-FR. А чтобы потом запустить программу с "французским" интерфейсом, надо будет подставить ключ /sl "1036" (1036 — код французского языка) в командную строку ярлыка.


Лирическое отклонение:
Однако, Вы — VIP-пользователь!
Цитировать
Пользователь №: 15000
« Последнее редактирование: 29 Августа 2011, 14:30:46 от VIPer »

СССР

Оффлайн Hellbringer

  • Новичок
  • *
  • Сообщений: 48
Adobe Audition CS 5.5
« Ответ #2 : 29 Августа 2011, 17:10:05 »
У меня стоит фотошоп CS.5, причём язык выбирается из настроек. Здесь же, он выбирается только при установке (выбрал русский). Но т.к. версия не локализована, то переведены лишь установочные окошки и окно регистрации. Трюк с ярлыком  результата не дал - подгружается английская(!) версия(скрин 4). Беглый просмотр файла ничего не дал, единственное что похоже на текст (скрин 1) является как раз ресурсными данными (скрин 3). Анализ ресурсов всех файлов в папке ничего не дал (скрин 2), в dll-ках в основном мусор, а там, где есть строковые таблицы, они слишком маленькие, и слов типа File, View и т.п. там нет. Плюс поверхностный поиск в реестре "au_zdictionary_en_US.txt", "Adobe Audition En" не дал результатов. Поиск по "Aobe Audition" выдал несколько интересных результатов, похожих на (скрин 5). Оно?
« Последнее редактирование: 29 Августа 2011, 17:35:49 от Hellbringer »

Оффлайн VIPer

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1063
Adobe Audition CS 5.5
« Ответ #3 : 29 Августа 2011, 18:13:48 »
Hellbringer
Цитировать
в dll-ках в основном мусор, а там, где есть строковые таблицы, они слишком маленькие, и слов типа File, View и т.п. там нет
Естественно, этих строк нет в ресурсах. Они "спрятаны" в самом ядре EXE и DLL (данные строки можно увидеть в HEX-редакторе).
Для их локализации воспользуйтесь программой Radialix.
« Последнее редактирование: 29 Августа 2011, 18:15:37 от VIPer »

СССР

Оффлайн Hellbringer

  • Новичок
  • *
  • Сообщений: 48
Adobe Audition CS 5.5
« Ответ #4 : 29 Августа 2011, 20:14:15 »
Поковырялся в некоторых файлах и в AuUI.dll нашёл кое-что (Скрин 1). Попробую править файл.

Файл оказался правильным! Как бы его теперь отредактировать, попробовал править, но исчезают все менюшки, которые идут после русского слова! (Скрин 2, 3)
« Последнее редактирование: 29 Августа 2011, 20:15:07 от Hellbringer »

Оффлайн Hellbringer

  • Новичок
  • *
  • Сообщений: 48
Adobe Audition CS 5.5
« Ответ #5 : 02 Сентября 2011, 19:15:37 »
Всё, я разобрался с переводом, тему можно закрыть =)
Кнопки "спасибо" нет =)