Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Офф-топ

Страница: 1 |

 

  Вопрос: Помогите перевести кусок Sub'a с Delphi 6 Добавлено: 05.11.04 14:11  

Автор вопроса:  Александр | ICQ: 204034 
1) Вот код на шестом дельфине. Особенно интересует как перевести функцию BlockWrite

    Buffer: array[1..1024] of Byte;

...

REPEAT
 err:= InternetReadFile(hURL, @Buffer,SizeOf(Buffer),BufferLen);
 IF err= false then
  begin
  ShowMessage ('Ошибка :(');
  exit;
  end;
 BlockWrite(f, Buffer, BufferLen);
 Application.Processmessages;
UNTIL (BufferLen= 0) Or (NADO= FALSE);
ShowMessage ('Успешно загружено!');
end;

Помогите, плиз. Очень надо!

2) Не дадите функцию/суб для бинарной записи в файл?

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #1 Добавлено: 05.11.04 14:29
2)
Private Sub BinaryWrite(path As String, data As String)
Open path For Binary Access Write As #1
Put #1, 1, data
Close #1
End Sub
' path - Путь файла
' data - Че пишем...

Ответить

Номер ответа: 2
Автор ответа:
 Александр



Разработчик Offline Client

ICQ: 204034 

Вопросов: 106
Ответов: 1919
 Профиль | | #2 Добавлено: 05.11.04 15:15
1) а что за blockwrite не знаешь?
2) Пасиба

Ответить

Номер ответа: 3
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 05.11.04 15:43
Если тебе пример по InternetReadFile нужен то его можно и на VB найти ;)

BlockWrite записывает в конец переменной f кажется, сейчас Дельфи под рукой нет, точно сказать не могу :(

Ответить

Номер ответа: 4
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 05.11.04 17:19
Кстати, вот сейчас сижу инет часть пытаюсь сваять для клиента форума, вот что получается, кажется как раз по твоей теме ;)

Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal lpszAgent As String, ByVal dwAccessType As Long, ByVal lpszProxy As String, ByVal lpszProxyBypass As String, ByVal dwFlags As Long) As Long
Private Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hInternet As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByRef dwContext As Long) As Long
Private Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByRef lpBuffer As Any, ByVal dwNumberOfBytesToRead As Long, ByRef lpdwNumberOfBytesRead As Long) As Integer
Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" (ByVal hInternet As Long, ByVal lpszServerName As String, ByVal nServerPort As Long, ByVal lpszUserName As String, ByVal lpszPassword As String, ByVal dwService As Long, ByVal dwFlags As Long, ByRef dwContext As Long) As Long
Private Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInternet As Long) As Boolean
Private Declare Function HttpOpenRequest Lib "wininet.dll" Alias "HttpOpenRequestA" (ByVal hConnect As Long, ByVal lpszVerb As String, ByVal lpszObjectName As String, ByVal lpszVersion As String, ByVal lpszReferrer As String, ByVal lplpszAcceptTypes As String, ByVal dwFlags As Long, ByRef dwContext As Long) As Long
Private Declare Function HttpSendRequest Lib "wininet.dll" Alias "HttpSendRequestA" (ByVal hRequest As Long, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByRef lpOptional As Any, ByVal dwOptionalLength As Long) As Long

Private Const INTERNET_OPEN_TYPE_PRECONFIG  As Long = 0&
Private Const INTERNET_SERVICE_HTTP         As Long = 3&
Private Const INTERNET_DEFAULT_HTTP_PORT    As Long = 80&

Private hInternet As Long, hConnect As Long, hRequest As Long

Public Function GetAllForums(ByRef outData As String) As Boolean
    Dim szBuffer    As String * 1024, _
        dwBytesRead As Long

    hInternet = InternetOpen(sInetName, INTERNET_OPEN_TYPE_PRECONFIG, cNull, cNull, cNull)
    If Not hInternet = cNull Then
        ' Îòêðûâàåì HTTP ñåññèþ
        hConnect = InternetConnect(hInternet, sOfflineHost, INTERNET_DEFAULT_HTTP_PORT, cNull, cNull, INTERNET_SERVICE_HTTP, cNull, cNull)
        If Not hConnect = cNull Then
            ' Îòêðûâàåì çàïðîñ
            hRequest = HttpOpenRequest(hConnect, "GET", sURLGetForums, cNull, cNull, cNull, cNull, vbNull)
            If Not hRequest = cNull Then
                ' Ïîñûëàåì çàïðîñ
                GetAllForums = Not (HttpSendRequest(hRequest, vbNullString, cNull, ByVal cNull, cNull) = cNull)
            
                If GetAllForums Then
                    Do While InternetReadFile(hRequest, ByVal szBuffer, Len(szBuffer), dwBytesRead)
                        outData = outData & Left(szBuffer, dwBytesRead)
            
                        DoEvents
                        If dwBytesRead = cNull Then Exit Do
                    Loop
                End If
                Call InternetCloseHandle(hRequest)
            End If
            Call InternetCloseHandle(hConnect)
        End If
        Call InternetCloseHandle(hInternet)
    End If
End Function

Ответить

Номер ответа: 5
Автор ответа:
 Nash Bridges



Вопросов: 5
Ответов: 139
 Профиль | | #5 Добавлено: 05.11.04 18:52
там лучше юзать не wininet.dll, а MSXML library.
Все равно ее придется использовать для парсера хмл.

Ответить

Номер ответа: 6
Автор ответа:
 Александр



Разработчик Offline Client

ICQ: 204034 

Вопросов: 106
Ответов: 1919
 Профиль | | #6 Добавлено: 05.11.04 19:24
там лучше юзать не wininet.dll, а MSXML library.
Все равно ее придется использовать для парсера хмл.

Это ты к чему?? Ты похоже промахнулся топиком...

Ответить

Номер ответа: 7
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #7
Добавлено: 05.11.04 23:45
это он про клиента мне %)

А код я тебе вполне рабочий дал...

Ответить

Номер ответа: 8
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #8 Добавлено: 06.11.04 07:32
а что за blockwrite не знаешь?


Я в дельфях вообще чайник

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам