Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162

Открыть новую тему     Написать ответ в эту тему

fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Хочеться очищать константы...
В программе задаю:
string qwerty = "очень длиный текст"
и я так понимаю все время он там и храниться... хотелось бы не забивать этим программу и после его использования очищать переменную qwerty
 
Добавлено:
И еще вопросик:
Подскажите как использовать компонент:
public bool UseUnsafeHeaderParsing { get; set; }
 
Два ньюанса:
1) Note: This property is new in the .NET Framework version 2.0.
У меня вроде все стоит, но данный компонент не виден
 
2) Как правильно его использовать? Нужно "HttpWebRequest.UseUnsafeHeaderParsing" включить.

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 05:55 28-02-2008
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fvgrod
Цитата:
Подскажите как выгружать из памяти константы или как очищать эти константы
Если это правда, то это есть дурной стиль. Константы на то и константы, извиняюсь за банальность.
Цитата:
Хочеться очищать константы...  
В программе задаю:  
string qwerty = "очень длиный текст"
Так ты определись -- константы, или обычные переменные? Если речь об "экономии" памяти -- пользуй StringBuilder.
Цитата:
...и я так понимаю все время он там и храниться... хотелось бы не забивать этим программу и после его использования очищать переменную qwerty
Плохо ты понимаешь. Почитай про область видимости.  
Вот такие "ньюансы".
Цитата:
Подскажите как использовать компонент:  
public bool UseUnsafeHeaderParsing { get; set; }
А кто тебе сказал, что это компонент? Это лишь свойство, который можно установить в true или false. Вот такие нюансы.

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 06:18 28-02-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TeXpert
 
Спасибо.
 
При использовании using System.Net.Mail;
 
При отправки с Windows XP все нормально, а если пытаюсь отправить с Windows 2003 Server выпадает ошибка:
"The server committed a protocol violation The server response was"
 
Весь Интернет перерыл, так и не нашел в чем проблема.
 
Подскажите пожалуйста кто знает.

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 07:42 28-02-2008
Viverra



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
"The server committed a protocol violation The server response was"

либо здесь должно быть важное(!) продолжение, либо винда жжот

Всего записей: 16 | Зарегистр. 19-02-2008 | Отправлено: 07:52 28-02-2008 | Исправлено: Viverra, 07:52 28-02-2008
akasyan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста, ответ на такой вопрос:
возможно ли конвертировать строку с именем директории в тип System.IO.DirectoryInfo?
 
У меня есть TreeView с именем tvwMain, ноды которого заполняются именами директорий и файлов.
К примеру,  

Код:
MsgBox(tvwMain.SelectedNode.Text)  

отображает C:\
(Используя семантику VB), следующая запись есть корректным объявлением:  

Код:
Dim dir As DirectoryInfo = New DirectoryInfo("C:\")

Однако таким способом

Код:
dir = CType(tvwMain.SelectedNode.Text, DirectoryInfo)

конвертировать строку, хранимую в тексте выбранного нода, в DirectoryInfo не получается.

Всего записей: 262 | Зарегистр. 12-11-2005 | Отправлено: 10:58 28-02-2008 | Исправлено: akasyan, 10:59 28-02-2008
Bubble2007

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Lihonosov и BaluBig  Большое спасиба

Всего записей: 6 | Зарегистр. 15-03-2007 | Отправлено: 12:58 28-02-2008
BaluBig



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
fvgrod

Цитата:
В программе задаю:  
string qwerty = "очень длиный текст"  
и я так понимаю все время он там и храниться... хотелось бы не забивать этим программу и после его использования очищать переменную qwerty
Положи по возможности строку в ресурсы. При необходимости ты её получишь в строковую переменную, после того, как необходимость пропадет - сделает свою работу сборщик мусора

Всего записей: 404 | Зарегистр. 06-02-2004 | Отправлено: 14:50 28-02-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите пожалуйста на такой вопросик.
 
Програмка на WinForm отображает время, за счет посекундного таймера.
 
Отправляю письмо через System.Set.Mail.Send()
 
Во время отправки часы зависают ( и вообще вся форма подвисает) пока письмо не уйдет... подскажите можно ли для часов или отправки задать отдельный какой нибудь процесс или память выделить... что бы отправка письма не отрожалась на всей форме

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 14:22 29-02-2008
sdubovitsky

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите с ASP.NET
на сайте используется Windows-авторизация. В web.config-е прописано:
<allow roles="domain\group" />
<deny users="*" />
 
В настройках сайта анонимус выключен. При обращении по IP (http://192.168.145.23) пользователь успешно авторизуется. А если по имени машины http://machinename - то авторизация не проходит. Если отключить на сайте Windows авторизацию и поставить Basic - то работает.
 
Что надо сделать чтобы Windows авторизация работала?

Всего записей: 22 | Зарегистр. 25-07-2006 | Отправлено: 14:29 29-02-2008
Viverra



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fvgrod, пользуйся классом BackgroundWorker, в MSDN хорошие примеры по его использованию.

Всего записей: 16 | Зарегистр. 19-02-2008 | Отправлено: 15:33 29-02-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Viverra
Спасибо

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 17:07 29-02-2008
BaluBig



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
fvgrod

Цитата:
пользуйся классом BackgroundWorker, в MSDN хорошие примеры по его использованию.
Причем в фоне делать желательно отправку, т.к. этот процесс не взаимодействует с GUI.

Всего записей: 404 | Зарегистр. 06-02-2004 | Отправлено: 18:57 29-02-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BaluBig Спасибо
 
В сумме все понятно, но вот две проблемки:
 
1) Можно ли выключить BackgroundWorker в любой момент?
(Есть функция CancelAsync() - только я так и не понял, что она в итоге делает)
 
2) Как отправлять MessageBox из BackgroundWorker?

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 14:52 01-03-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
И еще вопросик про ошибку, голову переломал, но так и не могу придумать, что ей надо:
 
See the end of this message for details on invoking  
just-in-time (JIT) debugging instead of this dialog box.
 
************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at SendMail.MessageSend.backgroundContinue_RunWorkerCompleted(Object sender, RunWorkerCompletedEventArgs e)
   at System.ComponentModel.BackgroundWorker.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e)
   at System.ComponentModel.BackgroundWorker.AsyncOperationCompleted(Object arg)

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 01:57 02-03-2008
spybot2d



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как в C# получить доступ к контролу, вызвавшему функцию без указания его имени напрямую из этой самой функции.
Пример: есть несколько TextBox'ов, при клике на каждом вызывается функция, выделяющая текст в нем. Чтобы не писать по функции на каждый, в которых разное лишь название TextBox'a, необходимо создать одну общую.
 
Вместо
Код:
 
void TextBox2Click(object sender, EventArgs e)
{
    this.textBox2.SelectAll();
}
    
void TextBox3Click(object sender, EventArgs e)    
{
    this.textBox3.SelectAll();
}
 

 
Хотелось бы
Код:
 
void TextBoxSelectAll(object sender, EventArgs e)
{
    this.ActiveControl.SelectAll();
}
 

Но такой вариант не работает, ругается что 'System.Windows.Forms.Control' does not contain a definition for 'SelectAll' (CS0117)

Всего записей: 5 | Зарегистр. 18-01-2008 | Отправлено: 16:02 02-03-2008 | Исправлено: spybot2d, 18:49 02-03-2008
EZH



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
fvgrod
Такую ошибку надо отлаживать, так ничего толком сказать нельзя. Где-то ссылка на какой-то объект у тебя оказалась null, а по ней происходит обращение.
 
spybot2d
Тебе надо обращаться не через this, а через sender. Преобразование типа не забудь.

Всего записей: 1738 | Зарегистр. 02-09-2004 | Отправлено: 18:46 02-03-2008
spybot2d



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EZH
У sender нет метода SelectAll() и каких-либо других намеков на остальные методы и свойства текстбокса или еще чего-либо дающего к ним доступ. Такое не работает:

Код:
 
sender.SelectAll();
 

И в какой тип и что преобразовывать? IntelliSense предлагает мне только ToString()...

Всего записей: 5 | Зарегистр. 18-01-2008 | Отправлено: 18:57 02-03-2008 | Исправлено: spybot2d, 19:00 02-03-2008
EZH



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
spybot2d
Конечено нет, т.к. он имеет тип object на входе в метод
Но реально это сслыка на объект, который инициировал событие. Т.е. если это был клик на TextBox, то и sender будет TextBox, только чтобы получить доступ к его методам надо преобразовать тип sender из object в Textbox.
 
Textbox txt = sender as Textbox;
if (txt != null)
  txt.SelectAll();

Всего записей: 1738 | Зарегистр. 02-09-2004 | Отправлено: 19:02 02-03-2008 | Исправлено: EZH, 19:05 02-03-2008
spybot2d



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EZH
Спасибо!

Всего записей: 5 | Зарегистр. 18-01-2008 | Отправлено: 19:04 02-03-2008
fvgrod



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите как задавать компрессию при сохранении в JPEG, а то по умолчанию из 2 метровой картинки получаеться файл либо пол метра (MemoryBmp) или сразу 80 КБ (JPEG). А надо получить 200 КБ.
 
Вот код, но компрессия в нем не работает:
 
        private void button_Click(object sender, EventArgs e)
        {
            Bitmap bmp = new Bitmap("test.bmp");
            ImageCodecInfo myImageCodecInfo;  
            Encoder myEncoder;  
            EncoderParameters myEncoderParameters;  
            myImageCodecInfo = GetEncoderInfo("image/jpeg");
            myEncoder = System.Drawing.Imaging.Encoder.Compression;  
            myEncoderParameters = new EncoderParameters(1);
            myEncoderParameters.Param[0] = new EncoderParameter(new Encoder(Encoder.Compression.Guid), (long)EncoderValue.CompressionNone);
            bmp.Save("test.jpg", myImageCodecInfo, myEncoderParameters);
        }
 
        private static ImageCodecInfo GetEncoderInfo(String mimeType)
        {
            int j;
            ImageCodecInfo[] encoders;
            encoders = ImageCodecInfo.GetImageEncoders();
            for (j = 0; j < encoders.Length; ++j)
            {
                if (encoders[j].MimeType == mimeType)
                    return encoders[j];
            }
            return null;
        }

Всего записей: 98 | Зарегистр. 17-10-2006 | Отправлено: 05:32 03-03-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru