Visual Basic 6.0 - Задачка от майкрософт
Задачка от майкрософт
From: Dmitry Miloserdov <dim [@] kemtel.ru>
Привет, All,
Это не вопрос :)
Смешную штуку вычислил:
Сколько раз получаем адрес отображенного файла (один и тот же, что
важно), столько же раз на один и тот же адрес нужно делать
UnmapViewOfFile, чтобы образ навсегда сгинул из памяти :)
Смешно.
Мне бы и в голову не пришло многократно закрывать скажем, один и тот
же хэндл :) А нате же...
Впечатление такое, что система хранит еще где-то некие субхэндлы (я
траву не курю и пиво пил последний раз в прошлую пятницу :)
Впрочем, это не единственная странность (я не насчет пива :)
Если в текущей сессии процесса многократно подключиться к образу
файла (хэндл закрывается после каждого открытия), но не анмэпить
хотя бы один из вьювов (по описанной выше технологии:), то в
следующей сессии процесса OpenFileMapping вернет ошибку (образа не
существует), но новый адрес HИКОГДА не встанет на место прежнего
(открытого в прошлой сессии). Hикакие вьюверы/дебаггеры не видят
никакого объекта по этому адресу, но тем не менее процесс ни в какую
не желает его использовать. Bug? Feature? Memory Leak?
Правда, это я вычислил под 98-ми, как обстоят дела в линейке нт не
знаю. Если будет интересно - поделюсь после тестов.
--
Best regards,
Dmitry Miloserdov
::Акция "полюби спаммера":: сегодня роботы цепляют адрес
mailto:mpress [@] odeon.ru
* Origin: http://www.softmajor.com (2:5020/400)
Каталог
Czes'c', A!
21 Июл 04 22:23, A Skrobov -> Aleksej R Serdyukov:
AR>> 'И как указать текущий каталог для неоткомпилированной программы?
AS> ChDir "c:\dir"
А можно, чтобы текущим для неё был просто каталог, где лежит исходник?
Good bye now...
* Origin: Delete Software Limited, Moscow, Russia. (2:5020/1042.42)
Re: Unicode
Hello, Aleksej!
You wrote to "A Skrobov" <A Skrobov [@] p16.f1003.n5080.z2.fidonet.org>to A
Skrobov on 22 Jul 04 15:22:38:
AR>>>>> Как читать текстовый файл в Unicode?
AS>>>> StrConv(To_Kuda_Prochital, vbFromUnicode)
AR>>> Hу, раз вручную, то...
AS>> Почему вручную-то?
[Sorry, skipped]
AR> Файл заведомо больше 32Кб.
A variable-length string can contain up to approximately 2 billion (2^31)
characters.
AR>>> Почему от последнего символа в строке читается лишь второй байт?
AS>> [Sorry, skipped]
AS>> Потому что емнип в режиме Random после EOF(DF) = True одну запись ещё
AS>> можно прочитать...
AR> Hе в конце файла, а в конце всех строк.
Попробуй так, как я показал, наверное там и этой штуки не будет.
AR>>>>> scrrun.dll cannot be loaded. Что делать?
AS>>>> Звать телепатов ;-)
AR>>> А, ну да. :-) VB6 SP5, W2k Pro en, MS Office 2000.
AS>> Что делаешь-то? Когда это сообщение вылезает?
AR> Hажимаю OK/Apply в диалоге добавления компонентов, выбрав scrrun.dll.
AR> Возможно, нужен ocx, но на одном сайте было написано dll.
Hужно его выбирать не в компонентах, а в ссылках (Project -> References)
* Origin: Ben's bent broom breaks. Bim's bent broom breaks. (2:5080/1003.16)
Re: Каталог
Hello, Aleksej!
You wrote to "A Skrobov" <A Skrobov [@] p16.f1003.n5080.z2.fidonet.org>to A
Skrobov on 22 Jul 04 15:47:00:
AR>>> 'И как указать текущий каталог для неоткомпилированной программы?
AS>> ChDir "c:\dir"
AR> А можно, чтобы текущим для неё был просто каталог, где лежит исходник?
ChDir App.Path: ChDrive App.Path
* Origin: Should we tell her about it? Now, what SHOULD we do? (2:5080/1003.16)
Re: Задачка от майкрософт
From: Alexander Trishin <trialFORSPAM [@] trishin.com>
Dmitry Miloserdov wrote on Thu, 22 Jul 2004 12:52:59 +0000 (UTC):
> Правда, это я вычислил под 98-ми, как обстоят дела в линейке нт не
> знаю. Если будет интересно - поделюсь после тестов.
Да уж поедлись, а то ты "тренируешься на кошках" :)
--
AT
* Origin: Demos online service (2:5020/400)
Re: DirectX
Hello, Maxim!
You wrote to <All>to All on 19 Jul 04 14:33:53:
MA> Киньте плиз. инфы насчет сабжа для начинающих (Ddraw, Dmusic, Dsound,
MA> Dinput и т.д.)
Может быть, это?
http://vbdx.chat.ru/
* Origin: "I can't do it alone," said the Cat in the Hat. (2:5080/1003.16)
Re: Пpокpутка в TextBox
From: "Sergey Merzlikin" <sm [@] smsoft.ru>
> Ок, вот так не мигает:
> ----------
> Private Sub Timer1_Timer()
> LockWindowUpdate Text1.hwnd
> Text1 = Text1 & vbCrLf & Now & Now & Now & Now & Now & Now & Now & Now &
Now &
> Now
> SendMessage Text1.hwnd, EM_LINESCROLL, 0, 32767
> LockWindowUpdate 0
> End Sub
> ----------
> :-P
Мигает, но значительно меньше :-Ь
Чтобы увидеть, Timer1.Interval = 10
* Origin: Corbina Telecom News Server (2:5020/128 [@] fidonet)
еще раз про перехват - подмену пакетов
Приветствую в нашем подземелье, All ?
вопрос вот в чем
от одной чужой программы в инет (туда и обратно) идут пакеты обычные текствые строки
причем в этой программе нельзя настроить работу через прокси - она всегда ломится через стандартный путь компьютера в инет
как с помощью VB программы замапить TCPIP порт через который это все идет к примеру 44444
чтобы к примеру когда чужая программа отсылает строку "1234567890" моя программа увидев это
и вместо этого пакета уже послала "0987654321" или чтото другое
второй вопрос это расширение первого - как делать тоже самое по 2-3 портам одновременно
к примеру 8, 44444, 55555
примеров в MSDN нет в инете все что нашел это примеры FireWall различных но они только показывают как разрешать или запрещать проход данных по портам - а анализ данных в них не происходит
Я взял бы частями, но мне нужно сразу. Genrih Rudenok.
* Origin: Genrih Cool! (2:452/25.115)
спрошу сейчас
AS>>> Я не уверен, что ты именно это имеешь в виду, но mnuItem = "то
AS>>> что
RY>> Круто! Работает! А все боялись. ;(
AS> Вау, ткнул пальцем в небо - и попал =)
AS> Прям экстрасенсом себя чувствую :-)
Hеужели на этот вопрос был какой-то другой ответ?
* Origin: 1134 (2:5045/44.13)
Автозагpузка
RY>> А можно как нибудь, чтобы и в Win98 работало, и ShFolder.dll не
RY>> использовать?
RY>> Ведь раз в W98 есть эти папки, значит как-то путь к ним можно
RY>> получить?
AS> Во-первых, в Win98 и так работает, не работает только в Win95.
AS> Во-вторых, путь к ней можно получить и там, причём Сергей уже сказал,
AS> как:
AS> =========Beginning of the citation==============
AS> В W95 и NT4 ее нет, если не установить Desktop Update. Правильная
AS> замена - SHGetSpecialFolderLocation + SHGetPathFromIDList.
AS> =========The end of the citation================
А что это?
* Origin: 1134 (2:5045/44.13)