Поиск и устранение неисправностей с приложением.NET, которое не запускается

Хорошо, есть хотя бы одна проблема с вашей функцией atoi.
Вы зацикливаетесь на значении без знака и проверяете, больше ли оно равно нулю, что должно быть недостаточным.

Самым простым исправлением является смещение индекса, т. Е.

unsigned long long int my_atoi(const char str[]) {
    unsigned long long int i, j, power, num = 0;
    for (i = strlen(str); i != 0; --i) {
        power = 1;
        for (j = 0; j < strlen(str) - i; ++j) {
            power *= 10;
        }
        num += (str[i-1] - '0') * power;
    }
    return num;
}
6
задан Michael Damatov 14 May 2009 в 12:22
поделиться

4 ответа

Я знаю, что это не решает проблему напрямую, но пробовали ли вы опубликовать свое приложение (если, конечно, вы используете Visual Studio)? Этот должен заключить все, что вам нужно, в программу установки.

0
ответ дан 17 December 2019 в 00:14
поделиться

Вы пробовали смотреть журналы слияния? У Сюзанны Кук есть статья об этом здесь .

Еще одна вещь, которую нужно сделать (чтобы минимизировать скрытые ошибки): минимизировать свой метод Main ; Причина в том, что JIT работает для каждого метода, и если он не может JIT Main , он не может использовать вашу обработку исключений:

/* for winform, you still new [STAThread] here */
static void Main() {
  try {
     MainCore();
  } catch (Exception ex) {
     // shout about it
  }
}

[MethodImpl(MethodImplOptions.NoInlining)] // usually overkill
static void MainCore() {
  // real code
}
3
ответ дан 17 December 2019 в 00:14
поделиться
3
ответ дан 17 December 2019 в 00:14
поделиться

У меня возникла проблема в результате чего приложения WPF не запускались - оказывается, проблема была связана со шрифтами на компьютере пользователя - отключение службы WindowsPresentationFontCache устранило проблему.

Я также нашел в другом месте сообщение со следующей информацией ...

... по неизвестной причине у клиента были неправильные записи в разделах реестра, которые используются для создания кэша «семейства шрифтов по умолчанию», указанного в трассировка стека. Клиента попросили экспортировать записи в HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Fonts и отправить файл мне. Было несколько странных имен файлов шрифтов, начинающихся с тире (---). Они были исправлены, и файл реестра был отправлен обратно клиенту для импорта. После этого приложение успешно запустилось!

Также может потребоваться удаление кеша шрифтов согласно инструкциям в этой ссылке http://support.microsoft.com/kb/937135

1
ответ дан 17 December 2019 в 00:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: