Здравствуйте, Alexey M., Вы писали:
AM>Здравствуйте, vasilov, Вы писали:
V>>Почему не качает?
AM>Проверте URL по которому происходит обращение. Если не указывать http:// в начале адреса, то обращение будет происходить к локальной файловой системе.
http есть.
Проблема в разнице поведения программы.
Запущеная из IDE качает, а запущенная нормально из виндов не хочет.
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>
Re[3]: webclient качает только если программа запущена из ст
Здравствуйте, vasilov, Вы писали:
V>Здравствуйте, Alexey M., Вы писали:
AM>>Здравствуйте, vasilov, Вы писали:
V>>>Почему не качает?
AM>>Проверте URL по которому происходит обращение. Если не указывать http:// в начале адреса, то обращение будет происходить к локальной файловой системе. V>http есть. V>Проблема в разнице поведения программы. V>Запущеная из IDE качает, а запущенная нормально из виндов не хочет.
Советую обратить внимание на пользователей, от которых запущен веб-клиент.
В студии он запускается от текущего пользователя, а вот вне студии — зависит от реализации. Служба это или еще что-либо.
Re: webclient качает только если программа запущена из студи
Здравствуйте, vasilov, Вы писали: V>Почему не качает?
Вариантов масса. Например, при запуске вне студии Вы забыли прописать какой-нить аргумент командной строки (ну или еще что-нить в таком духе, например, текущая папка другая стала — и программа не нашла какой-нить конфигурационный файл) и программа падает вообще до вызова указанного кода. Вариантов масса.
Сделайте в программе отладочную печать (на консоль или в файл) и поглядите, в каком месте она падает.
Re[4]: webclient качает только если программа запущена из ст
Здравствуйте, AlexSorokoletov, Вы писали:
V>>Проблема в разнице поведения программы. V>>Запущеная из IDE качает, а запущенная нормально из виндов не хочет. AS>Советую обратить внимание на пользователей, от которых запущен веб-клиент. AS>В студии он запускается от текущего пользователя, а вот вне студии — зависит от реализации. Служба это или еще что-либо.
Никаких проблем с пользователями. Никаких служб — обычная WinForms программа.
На моей домашней машине.
Из студии запустил — скачалось, тут же зашел в bin/debug и запустил — фиг.
Виснет на строке client.DownloadString.
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>
Re[2]: webclient качает только если программа запущена из ст
Здравствуйте, Mr.Cat, Вы писали:
MC>Здравствуйте, vasilov, Вы писали: V>>Почему не качает? MC>Вариантов масса. Например, при запуске вне студии Вы забыли прописать какой-нить аргумент командной строки (ну или еще что-нить в таком духе, например, текущая папка другая стала — и программа не нашла какой-нить конфигурационный файл) и программа падает вообще до вызова указанного кода. Вариантов масса. MC>Сделайте в программе отладочную печать (на консоль или в файл) и поглядите, в каком месте она падает.
Ну отладочная была.
Только не замечалась ошибка. Закачка в отдельном thread была.
Поставил в onLoad формы строки
WebClient client = new WebClient();
Text = client.DownloadString("http://ya.ru");
и при запуске выскочила ошибка
System.Configuration.ConfigurationErrorsException: Configuration system failed to initialize ---> System.Configuration.ConfigurationErrorsException: Data at the root level is invalid. Line 1, position 1. (E:\Arbeit\3. Работа(все остальное)\CSarp\Телепрограмма\TVLoadAfisha\TVLoadAfisha\bin\Debug\TVLoadAfisha.config line 1) ---> System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.XmlTextReader.Read()
at System.Configuration.XmlUtil..ctor(Stream stream, String name, Boolean readToFirstElement, ConfigurationSchemaErrors schemaErrors)
at System.Configuration.BaseConfigurationRecord.InitConfigFromFile()
--- End of inner exception stack trace ---
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors)
at System.Configuration.BaseConfigurationRecord.ThrowIfInitErrors()
at System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
--- End of inner exception stack trace ---
at System.Configuration.ConfigurationManager.GetSection(String sectionName)
at System.Configuration.PrivilegedConfigurationManager.GetSection(String sectionName)
at System.Diagnostics.DiagnosticsConfiguration.GetConfigSection()
at System.Diagnostics.DiagnosticsConfiguration.Initialize()
at System.Diagnostics.DiagnosticsConfiguration.get_Sources()
at System.Diagnostics.TraceSource.Initialize()
at System.Net.Logging.InitializeLogging()
at System.Net.WebClient.DownloadString(Uri address)
at System.Net.WebClient.DownloadString(String address)
at TVLoadAfisha.Form1.Form1_Load(Object sender, EventArgs e) in E:\Arbeit\3. Работа(все остальное)\CSarp\Телепрограмма\TVLoadAfisha\TVLoadAfisha\Form1.cs:line 31
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
А из студии прокатывает без ошибок. Откуда-что взялось, непонятно.
Как я понял, какие-то настройки проекта поломались.
Наверное, проще создать новый проект и перетащить туда исходники.
Спасибо за внимание.
Вопрос закрываю.
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>
Re[3]: webclient качает только если программа запущена из ст
Я пытался хранить настройки программы в файле <имя проекта>.config.
Формат свой.
Судя по всему, при попытке скачать страницу, net'ная библиотека, увидев наличие такого файла, пытается его зачитать и достать оттуда какие-то свои настройки. И в связи с тем, что у меня не xml формат, валится с ошибкой не обрабатывая ее сама.
Решением проблемы стало хранение своих настроек в <имя проекта>.cfg.
Мне кажется такое поведение framework'а некорректным, но как настучать об этом Биллу Гейтсу (во всех смыслах), я не знаю.
Тем более, при запуске из студии такой проблемы почему-то не возникает.
... << RSDN@Home 1.2.0 alpha 4 rev. 1091>>
Re[2]: webclient качает только если программа запущена из ст
V>Мне кажется такое поведение framework'а некорректным, но как настучать об этом Биллу Гейтсу (во всех смыслах), я не знаю. V>Тем более, при запуске из студии такой проблемы почему-то не возникает. в гугле пишем report .net framework bug, вторая ссылка — Ваша. Только там надо зарегистривовать Live-аккаунт.
Re[2]: webclient качает только если программа запущена из ст
Здравствуйте, vasilov, Вы писали:
V>Мне кажется такое поведение framework'а некорректным
Это Вам кажется. Файл .exe.config уже давно распознаётся системой, а не только .net framework.