Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Программа на стороннем компьютере выдает ошибку 
V
    Опции темы
Experimenter
Дата 19.10.2007, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 4
Всего: 17



Цитата

Что интересно после возникновении ошибки на рабочем столе возникает T_ASA1.1 размером 0кb

правильно, что возникает, ты ж его сам создаешь
Код

FileStream fs = new FileStream("T_ASA" + nn + ".1", FileMode.OpenOrCreate);

идем далее: так как длина только что созданного файла равна 0, цикл
Код

                    while (b > 0)
                    {
                        text += char.ConvertFromUtf32(b);
                        b = fs.ReadByte();
                    }
 не выполняется. Переменная text у тебя пустая, массив strs тоже пустой, ты пытаешься достать из этого массива элемент с индексом i=0 (первый), но этот элемент отсутствует. Держи!!! ВОТ ОНО!!!
В том то и дело - файл удалили или его и не было, а у тебя в случае его отсутствия генерится на рабочем столе файл T_ASA1.1 с размером 0 кb.
Проверку File.Exists("filename") ты тоже не делал... Если б делал, все было б нормально...
Ладно, что-то я разошелся...



--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
okaton
Дата 19.10.2007, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 24.11.2006

Репутация: нет
Всего: нет



1stain, Experimenter, СПАСИБО!!! 
Сейчас буду исправлять. А по поводу T_ASA1.1, они присутствуют

PM MAIL   Вверх
Experimenter
Дата 19.10.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 4
Всего: 17



Цитата

А по поводу T_ASA1.1, они присутствуют

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

Добавлено через 9 минут и 23 секунды
В одном ты прав - код работает одинаково у тебя и у юзера


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
okaton
Дата 19.10.2007, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 24.11.2006

Репутация: нет
Всего: нет



Цитата(Experimenter @  19.10.2007,  22:20 Найти цитируемый пост)
Видимо, не всегда, чудес не бывает. Да и дальше по циклу другие файлы могут создаваться тоже с нулевым размером.


Я его сам туда засовывал, и после ошибки программы он там оставался в том же виде в котором я его и оставлял...

я изменил FileStream 
Код
fs = new FileStream("T_ASA" + nn + ".1", FileMode.OpenOrCreate);

на 
Код
FileStream  fs = new FileStream("T_ASA" + nn + ".1", FileMode.Open);


И вот что обнаружил первый раз отработала нормально, а во второй выдала ошибку о том что файл T_ASA1.1 не найден на рабочем столе (тут расположен ярлык через который я запускал программу (программа запакована в Inno Setup))) После я запустил через Пуск\Программы\... (тут тоже был создан ярлык) - та же история. Запустил из папки куда установил - работат, создал ярлык на рабочий стол - работает. Проверил грешным делом может инсталлятор создал не ярлык, а исполняемый файл запихнул - нет ЯРЛЫКИ. 
Странно

Добавлено @ 21:49
В ярлыках не указана была рабочая папка поэтому, видимо, был косяк
Завтра еще потестю, отпишусь как прошло

Это сообщение отредактировал(а) okaton - 19.10.2007, 21:50
PM MAIL   Вверх
Experimenter
Дата 19.10.2007, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 430
Регистрация: 8.5.2007
Где: Уфа

Репутация: 4
Всего: 17



Тогда пропиши в коде абсолютные пути к своим файлам (или еще лучше - в настройки вынеси) и не мучайся.
И учти тот момент, что если файл и есть, то у него может быть размер нулевой, что тоже к ошибке приведет.


--------------------
public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){
    if(zlo1 < zlo2) return zlo1;
    else if(zlo1 > zlo2) return zlo2;
    else throw new Exception("Kill yourself by the wall"); }
PM WWW ICQ   Вверх
okaton
Дата 20.10.2007, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 24.11.2006

Репутация: нет
Всего: нет



Работает.  smile 
Я текстовые файлы добавил к проекту и в ресурс и прочитал их от туда.
Вот с остальными так не получилось ресурсы читаю только byte или  text, а мне надо float.
А как перевести byte во float я даже не дагадываюсь :(
Так что написал там абсолютный путь.

Всем большое спасибо за оказанную помощь и поддержку!
PM MAIL   Вверх
okaton
Дата 20.10.2007, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 24.11.2006

Репутация: нет
Всего: нет



byte во float перевести получилось через BitConverter.ToSingle

Теперь внешних файлов у программы не будет.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0876 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.