Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / таймер в vb.net / 24 сообщений из 24, страница 1 из 1
28.10.2017, 22:10
    #39543822
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
в процедуре запускаю таймер. msgboxы говорят, что всё работает, но таймер не срабатывает. мучаюсь уже третий день, проклиная криворукость создателей visual studio, в vb6 такого не было( подскажите, в чем может быть дело? именно timer3 не работает, другие таймеры работают. пробовал удалить ставить обратно, пробовал переименовывать, но не работает и всё тут( мистика
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub q(ByVal asynchronousResult As IAsyncResult)
    MsgBox("запустить")'появляется
    Timer3.Enabled = True
    If Timer3.Enabled = True Then MsgBox("работает")'появляется
    End If
End Sub

Private Sub Timer3_Tick(sender As Object, e As EventArgs) Handles Timer3.Tick
    MsgBox("работает")'не появляется
    getypravlenie()
End Sub



Модератор: Тема перенесена из форума "Visual Basic".
...
Рейтинг: 0 / 0
28.10.2017, 23:24
    #39543856
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
никаких идей( хоть проект заново пересоздавать. неужели ни у кого такого не было?
...
Рейтинг: 0 / 0
29.10.2017, 00:20
    #39543864
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Просто экстрасенсы в отпуске. Если внятно не получается сформулировать проблему, выложи хотя бы тестовый проект.
...
Рейтинг: 0 / 0
29.10.2017, 03:30
    #39543877
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerokпроклиная криворукость создателей visual studio
Это они написали вам проект с таймером?
...
Рейтинг: 0 / 0
29.10.2017, 08:31
    #39543892
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerok,
вы пытаетесь открыть мсгбокс не из sta потока, По этому он и не появляется, Так что дело не в создателях Vs , а ваших кривульках :) Для отладки используйте класс system. diagnostics. debug
...
Рейтинг: 0 / 0
29.10.2017, 09:14
    #39543897
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Roman Mejtesqlewerok,
вы пытаетесь открыть мсгбокс не из sta потока, По этому он и не появляется, Так что дело не в создателях Vs , а ваших кривульках :) Для отладки используйте класс system. diagnostics. debug
Таймер System.Windows.Forms.Timer вполне себе работает в STA, а таймер System.Timers.Timer при заданном SynchronizingObject из UI-потока маршаллирует события в этот поток. Так что пока ТС не приведет полный код, остается только гадать, чем ему так насолили злобные авторы MSVS.
...
Рейтинг: 0 / 0
29.10.2017, 11:18
    #39543914
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Сон Веры Павловны,

ну я не претендую на истину, из сообщения не ясно какой это таймер и в каком контексте выполняется обработчик события. Всё, что известно, что окно MsgBox не открывается по таймауту.

Автору советую не задерживаться на VB.NET и переходить на C# :) Нет не 1 нормальной причины, по которой нужно программировать в VB.NET, а не в C#. Переход будет недолгим, а понимания, что это было сделано не зря, очень быстрым и гарантированным :)
...
Рейтинг: 0 / 0
29.10.2017, 12:21
    #39543932
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Roman MejtesНет не 1 нормальной причины, по которой нужно программировать в VB.NET, а не в C#
Можно тоже самое сказать и об обратном) Не понимая природы .NET, не имеет смысла программировать вообще под .NET, и дело не в языке
...
Рейтинг: 0 / 0
29.10.2017, 12:43
    #39543939
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
я обращаюсь к файлу moysyte.php, получаю от него ответ, запускаю таймер. но таймер3 не запускается. подозреваю, что это связано с асинхронностью запроса. в vb6 всё работало нормально +в оригинальном найденном коде было private shared sub, но я изменил, мб с этим как-то связано
Код: vbnet
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.
Private Sub novrab()

        Dim request As HttpWebRequest = CType(WebRequest.Create("http://moysyte.php"), HttpWebRequest)
        request.ContentType = "application/x-www-form-urlencoded"
        request.Method = "POST"
        Dim result As IAsyncResult = CType(request.BeginGetRequestStream(AddressOf novrab2, request), IAsyncResult)
    End Sub

    Private Sub novrab2(ByVal asynchronousResult As IAsyncResult)

        Dim postData As String = "a=1"
        Dim request As HttpWebRequest = CType(asynchronousResult.AsyncState, HttpWebRequest)
        Dim requestStream As Stream
        requestStream = request.EndGetRequestStream(asynchronousResult)
        '  Convert the string into byte array.
        Dim postBytes As Byte() = System.Text.Encoding.GetEncoding(65001).GetBytes(postData)
        requestStream.Write(postBytes, 0, postBytes.Length)
        requestStream.Close()
        ' Start the asynchronous operation to get the response
        Dim result As IAsyncResult = CType(request.BeginGetResponse(AddressOf novrab3, request), IAsyncResult)

    End Sub

    Private Sub novrab3(ByVal asynchronousResult As IAsyncResult)
        Dim request As HttpWebRequest = CType(asynchronousResult.AsyncState, HttpWebRequest)
        '  Get the response.
        Dim response As HttpWebResponse = CType(request.EndGetResponse(asynchronousResult),
           HttpWebResponse)
        Dim streamResponse As Stream = response.GetResponseStream()
        Dim streamRead As New StreamReader(streamResponse)
        Dim responseString As String = streamRead.ReadToEnd()
        'Console.WriteLine(responseString)
        ' Close Stream object.
        streamResponse.Close()
        streamRead.Close()
        ' Release the HttpWebResponse.
        response.Close()
        If responseString = "yes" Then
            Timer0.Enabled=False
            Timer3.Enabled = True
        End If
    End Sub

...
Рейтинг: 0 / 0
29.10.2017, 12:44
    #39543940
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
p/s msgboxы вообще не при чем, они лишь демонстрировали, что таймер действительно не рабоатет
...
Рейтинг: 0 / 0
29.10.2017, 13:02
    #39543949
refreg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Какая интересная подписка на события в vb.net )))
А что явно подписаться нельзя?

Предположение (vb.net не знаю):
Именно Shared позволяет инициализировать Timer3.Tick. Ну или проверь, что бы Timer3 не был Shared.
...
Рейтинг: 0 / 0
29.10.2017, 13:13
    #39543958
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
а какие гарантии, что после msgbox в другом потоке, что то будет выполняться? поток заблокирован должен быть или упасть с эксепшеном.
Мы так и не увидели, реализацию какого таймера вы используйте. Может я слепой
Мы должны понять это экстрасенсорными способностями?
VSVLADRoman MejtesНет не 1 нормальной причины, по которой нужно программировать в VB.NET, а не в C#
Можно тоже самое сказать и об обратном) Не понимая природы .NET, не имеет смысла программировать вообще под .NET, и дело не в языкея не про функционал framework'а, конечно он доступен и в ABC Pascal.
А про сахар и удобства которые очевидны.
...
Рейтинг: 0 / 0
29.10.2017, 13:27
    #39543969
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
refregА что явно подписаться нельзя? если бы я знал... язык какой-то кривой, мне нужно просто обратиться к файлу на сервере и, в зависимости от ответа, выполнить действие. в vb6 приходилось ставить таймер и самому ловить ответ с сервера, но код хотя бы исправно работал
...
Рейтинг: 0 / 0
29.10.2017, 13:34
    #39543973
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
...
Рейтинг: 0 / 0
29.10.2017, 14:47
    #39543998
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
этот таймер (system.windows.forms.timer) какой-то неправильный. я не могу обратиться к нему из процедуры асинхронного запроса. могу менять содержимое текстбоксов, задавать переменные, но таймер глух к моим попыткам его запустить. подскажите, как?
...
Рейтинг: 0 / 0
29.10.2017, 15:54
    #39544011
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
заработало, взял таймер из system.timers, а не стандартный из system.windows.forms. код отсюда https://msdn.microsoft.com/ru-ru/library/system.timers.timer.enabled(v=vs.110).aspx
спасибо за оперативную помощь. зачем городить море таймеров, которые не работают в, казалось бы, очевидной ситуации, мне непонятно, решение разработчиков я считаю мягко говоря неадекватным
...
Рейтинг: 0 / 0
29.10.2017, 16:30
    #39544019
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerokкод брал отсюда https://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.begingetrequeststream(v=vs.110).aspx
И где в этом коде хоть какой таймер?

К тому же учитывая async/await приведенная ссылка не так актуальна
...
Рейтинг: 0 / 0
29.10.2017, 19:12
    #39544046
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerokзачем городить море таймеров, которые не работают в, казалось бы, очевидной ситуации, мне непонятно, решение разработчиков я считаю мягко говоря неадекватнымТо есть ты считаешь неадекватным всё то, в чём не разбираешься? Великолепная позиция!
...
Рейтинг: 0 / 0
31.10.2017, 21:49
    #39545631
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
ничего не подсказали, поворчали, а когда выложил решение своего же вопроса, меня ж еще выставили неучем. узнаю родной форум))
...
Рейтинг: 0 / 0
31.10.2017, 22:08
    #39545635
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerokменя ж еще выставили неучем
это ты сам сделал
...
Рейтинг: 0 / 0
01.11.2017, 06:55
    #39545705
fortibransa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
Короче
Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub q(ByVal asynchronousResult As IAsyncResult)
    MsgBox("запустить")'появляется
    Timer3.Enabled = True
    If Timer3.Enabled = True Then MsgBox("работает")'появляется
    End If
End Sub

это у тебя из другого потока прилетает? Тогда Timer3.Enabled = True надо инвочить, какие проблемы то.
...
Рейтинг: 0 / 0
13.03.2018, 21:20
    #39614403
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
тема всё ещё актуальна. написал проект. всё работает. ничего не менял. зашёл в код. таймеры не запускаются
...
Рейтинг: 0 / 0
13.03.2018, 22:01
    #39614417
qlewerok
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
ставлю новые таймеры, копирую в них события из старых таймеров. удаляю старые таймеры. всё снова работает, но надолго ли. в vb6 у меня такое было с компонентами браузера, а в vb.net даже стандартные компоненты лагают
...
Рейтинг: 0 / 0
14.03.2018, 01:35
    #39614482
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
таймер в vb.net
qlewerokставлю новые таймеры, копирую в них события из старых таймеров. удаляю старые таймеры. срамота и извращение. даже в сути дела не хочется разбираться.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / таймер в vb.net / 24 сообщений из 24, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]