Winsock + VB = висяк:)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Winsock + VB = висяк:)

Сообщение SSecurity » 03.07.2005 (Вс) 13:57

Привет всем странный у меня получается вариант.
Вот листинг:

на форме 2 дефолтовые кнопки
1 винсок [name = "pop"]
2 текстбокса, Text1 - многострочный

Код: Выделить всё
Private Sub Command1_Click()
    pop.Close
    pop.Connect "pop3.aaanet.ru", 110
End Sub

Private Sub Command2_Click()
    pop.Close
End Sub

Private Sub pop_DataArrival(ByVal bytesTotal As Long)
    Dim AAA As String
    pop.GetData AAA
    Text1 = Text1 & AAA
End Sub

Private Sub pop_SendComplete()
    Text1 = Text1 & "Sended" & vbCrLf
End Sub

Private Sub Text2_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = 13 And pop.State = 7 Then
        pop.SendData Text2 & vbCrLf
        Text2 = ""
    End If
End Sub


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

в чем прикол? хелп
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Сообщение SSecurity » 03.07.2005 (Вс) 14:10

Вообщем-то тесты показали: коннект онли + дисконнект убивает систему:))))
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Сообщение SSecurity » 03.07.2005 (Вс) 23:26

Привет, земляк:))))

Вообщем-то это и был весь код, я тут асю делаю, коннект замечательный, а вот наш родой глюченный ПОПЗ сервер ААА после модернизации 29 числа .... как-то не дает работать проге ....причем поднял соресы старых почтовых прог .... нормально все ...
сорес формы щас выложу ...

тока с ноута перейду на рабочий комп:))
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

SSecurity
Служба безопасности
Аватара пользователя
 
Сообщения: 1283
Зарегистрирован: 19.08.2003 (Вт) 1:11
Откуда: Россия, Мурманск

Сообщение SSecurity » 03.07.2005 (Вс) 23:56

Вопрос не снимается, тему не закрывать:)

Перезагружал когда винду заново попробовал ... все нормально работает .... вот маразм ... через некоторое время начинает глючить:)

вот значится проект ....
он коннектится к любому серверу, т.е. пишем сервер, пароль, логин ... и он коннектится...

но вот виснет .... бяка:(
Вложения
Mail.zip
Проект "Моя Почта не работает:("
(3.06 Кб) Скачиваний: 34
Программист - это маленький Бог, а все его ошибки - это самостоятельные творения:)
Так задумано:)

Юджин
Обычный пользователь
Обычный пользователь
 
Сообщения: 90
Зарегистрирован: 26.10.2005 (Ср) 12:49

Сообщение Юджин » 02.12.2005 (Пт) 20:38

подключил к твоей проге следующий код
Код: Выделить всё
Private Sub MessageSingIn()
Dim MailCount As Long
Dim MailIndex As Long
Dim AttachTMP() As String
Dim MsgDateReceived As String
'On Error GoTo ErrorMessageIN
  MAPISession1.SignOn
  With MAPIMessages1
    .SessionID = MAPISession1.SessionID
    .Fetch
    MailCount = 0
    For MailIndex = 0 To .MsgCount - 1
      .MsgIndex = MailIndex
      List1.AddItem .MsgOrigDisplayName  '<-- что за файл
      List2.AddItem .MsgSubject          '<-- тема
      List3.AddItem .MsgDateReceived       '<-- складываем
      List4.AddItem .AttachmentPathName  '<-- аттач
      MailCount = MailCount + 1
    Next MailIndex
  End With
  MAPISession1.SignOff
If List1.ListCount <> 0 Then
    List1.ListIndex = 0
    If Len(List4.List(List1.ListIndex)) <> 0 Then
      'Form1.IncrimFullPach List4.List(List1.ListIndex), AttachTMP
      Command1.Enabled = True
    Else
      Command1.Enabled = False
    End If
  End If
  GoTo EndProcIN
ErrorMessageIN:
  MsgBox "ошибка сервака."
EndProcIN:
End Sub
и не могу понять, как приаттаченные к определенным мисьмам (тема, отправитель) сохранить в папке c:\Priem
более того. твоя прога берет только некоторые письма - сегодня (02/12/2005) мне пришли мыла, а прога нашла на серваке только от 30/11/2005, хотя с сервака их никто не удаляет. как быть и что делать?????

Alfa
Бывалый
Бывалый
 
Сообщения: 249
Зарегистрирован: 12.01.2003 (Вс) 20:15
Откуда: Россия, Красноярск

Сообщение Alfa » 04.12.2005 (Вс) 7:53

Была такая же проблема. Visual Basic виснул при работе с Winsock'ом в режиме создания программы (скомпилированный проект работал отлично) после продолжительной работы системы. Проблема решилась только переустановкой Visual Basic'а.
Изображение

SeT
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 362
Зарегистрирован: 29.12.2004 (Ср) 13:11

Сообщение SeT » 04.12.2005 (Вс) 10:28

А у меня winsock вообще не закрывается, даже после .close
Может использовать альтернативу?
01000100
Причиняет боль 0010
Виртуальная любовь 00100
Индустрия снов 0010

SeT
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 362
Зарегистрирован: 29.12.2004 (Ср) 13:11

Сообщение SeT » 05.12.2005 (Пн) 15:09

Билли - гей. тссс...
01000100
Причиняет боль 0010
Виртуальная любовь 00100
Индустрия снов 0010


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, SemrushBot, Yandex-бот и гости: 94

    TopList