Написать DLL

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
dima_C++
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 11.11.2005 (Пт) 10:08

Сообщение dima_C++ » 11.11.2005 (Пт) 12:59

Antonariy писал(а):
взял сишку ATL и не стал юзать МФЦ из-за принципа, все делал своимим руками.....

нет оптимизатора логических выражений, это же меня убивает

А как же своими руками/головой? Путаетесь в показаниях.
ну нет указателей, блин я ваабще не понимаю как без этого можно жить.

StrPtr, VarPtr, ObjPtr
А про йад уже писали...
но вот мне кажется к примеру что нельзя как в борланде объявить переменную типа класса

А чем к примеру "Dim rs As ADODB.Recordset" не комильфо?

йаду выпей сам... ваабще указатели существуют для того чтобы работаь сними....а не для того чтобы иметь возможность перадавать в апишные функциии
а
Dim rs As ADODB.Recordset
....ты не понял увы ничего ... (с) DDT

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.11.2005 (Пт) 13:04

На тот случай, если ты пропустил из-за перехода страницы.
http://bbs.vbstreets.ru/viewtopic.php?p=164269#164269

Очень интересно продолжить разговор.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 11.11.2005 (Пт) 13:13

Да, иногда приходится извращатся. ООП есть, правда не совсем такой как в Си или в ВиБиНЕТ, но есть.

прямого объявления блоков

А чо это такое? :shock:
[Место cдаётся]

dima_C++
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 11.11.2005 (Пт) 10:08

Сообщение dima_C++ » 11.11.2005 (Пт) 13:14

GSerg писал(а):
dima_C++ писал(а):прямого объявления блоков

Что понимается в данном случае под блоками?

dima_C++ писал(а):оператора присваивания, это же основа я задалбался писать что то dim f as boolean
f = not (LV.count <> -1) это же извращение

А как должно быть правильно?
Кстати, я бы написал f = LV.Count = -1. Ты знал, что это возможно в VB?

dima_C++ писал(а):нет оптимизатора логических выражений, это же меня убивает

Оптимизации нет.
Это плата за то, что операторы побитовой логики совпадают с операторами булиновой.
Мы раскладываем выражение на вложенные и не жалуемся.

dima_C++ писал(а):ну нет указателей, блин я ваабще не понимаю как без этого можно жить.

Указатели есть.
Если их не видно при первом расслабленном взляде, это говорит лишь о лени глядящего.
VarPtr посмотри для начала.

dima_C++ писал(а):но вот мне кажется к примеру что нельзя как в борланде объявить переменную типа класса, то есть сама перменная определяет тип класса... ну и т.п.

Бред. Можно.

Есть только путаница с формами. Но только с формами. И только в том случае, когда ты сам, по своему желанию решаешь воспользоваться этой путаницей.
Если решаешь не пользоваться, всё как обычно и с формами в том числе.


во как хорошо, вот видите как открываете мне просто глаза и искореняете мои предрассудки.... ну не все так плохо ....

а про классы.... я имел ввиду что есть базовый класс(Item), от него наследуются некие объекты.... есть базовый класс-коллекция(Collection), прородитель уже конктреных коллекций под каждый определенный тип.... соотвественно базовый класс Collection работает с базовым типом(Item), но все хорошо но в некий момент базовая коллекция имеет методы для создания объектов именно такого типа,
для которых она будет наследована в будущем.... то есть базовая коллекция должна создать экземпляр класса неизвестной ей типа, про который она и не знает.... вот в борлнаде нашелся выход легко, в каждой конектно реализации коллекции задавался переменная где в конструктуре указаывался тип класса, с которым она будет работать и соотвественно уже в Collection создавались итемсы исходя из значения этой переменной.... вот такой изврат поддерживает к примеру басик?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.11.2005 (Пт) 13:18

Это не изврат, это шаблоны, или generic types.
Показательно, что ты не знаешь их названия, кстати.

Полная прямая поддержка шаблонов появилась в VB 2005.
В VB 6 просто есть переменная типа Object, которая может содержать ссылку на любой объект.



Так что такое блоки, всё-таки?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 11.11.2005 (Пт) 13:20

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

А чем к примеру "Dim rs As ADODB.Recordset" не комильфо?

Не, видимо наш знаток COM никогда не слышал про CoCreateObject.
Дима, в твоем понимании COM это такие файлы с расширением .COM?
Кстати, Дима если ты не вкурсе, тема Что нельзя сделать на VB уже обсуждалась. Можешь поискать. НИЧЕГО из тобой перечисленного там нет.
Я просто не понимаю кто серьезно воспринимает басик как средство разработки WIN32....

Бядняга, работать в сложнойи запутанной среде phpBB тебе не приходилось :)
Ну что ж просвещу тебя, там в верху каждой страницы есть кнопочка ПОЛЬЗОВАТЕЛИ. Там ты получшь ответ на свой вопрос.
может по дискуссируем на тему программирования а? поделимся опытом, короче померемся у кого длиньше.... не думаю что ты меня чем-то удивишь....

Давай пойдем в какой-нибудь бар, подискутируем.
ТОЛЬКО: Выпивка за твой счет. И причем хорошая. Терпеть таких хамов на халяву сомнительное удовольствие.
когда я в первый раз увидел код виндовой программы я был удивлен, оказалось то все просто.... регистрируешь атом, создаешь окно, делаешь шоу, циклишь обработчик окна, все ....

Опять же, кто мешает делать то же самое на VB?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 11.11.2005 (Пт) 13:25

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

Не фига се просто... Если так нравится Апи и так привязан к бейсику используй Пауер Бейсик.
[Место cдаётся]

dima_C++
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 11.11.2005 (Пт) 10:08

Сообщение dima_C++ » 11.11.2005 (Пт) 13:26

GSerg писал(а):Это не изврат, это шаблоны, или generic types.
Показательно, что ты не знаешь их названия, кстати.

Полная прямая поддержка шаблонов появилась в VB 2005.
В VB 6 просто есть переменная типа Object, которая может содержать ссылку на любой объект.



Так что такое блоки, всё-таки?


ха шаблоны, спасибо что глаза открыл.... я грил про дельфу, где нет их... ну если сишное извращение перетекает в басик, это же отлично....

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 11.11.2005 (Пт) 13:29

Данный сабж является оффтопикофлудофлеймом и многократно нарушает все правила форума!!!
[Место cдаётся]

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.11.2005 (Пт) 13:33

dima_C++ писал(а):ха шаблоны, спасибо что глаза открыл.... я грил про дельфу, где нет их... ну если сишное извращение перетекает в басик, это же отлично....

Ну, в общем, всё ясно.
За неимением аргументов противная сторона отделывается цитатами подходящего материала.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 11.11.2005 (Пт) 13:36

Бейте тему вместе с Димой
Со мной мириться невозможно.
Для каждого хорош удел такой,
Что прибавлять и убавлять грешно.
[Место cдаётся]

dima_C++
Начинающий
Начинающий
 
Сообщения: 16
Зарегистрирован: 11.11.2005 (Пт) 10:08

Сообщение dima_C++ » 11.11.2005 (Пт) 14:02

Денис Победря писал(а):Бейте тему вместе с Димой
Со мной мириться невозможно.
Для каждого хорош удел такой,
Что прибавлять и убавлять грешно.

ну ладно... :oops: я не замахивался на недостижимую высоту познаний басика... зато сколько я сразу про него узнал, всем спасибо... все ....

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 11.11.2005 (Пт) 14:11

Люля Денису.

Дима, не подскажешь, что в данном случае означает "L" после числа? Надо перевести функцию на VB.

double TC_YMDtoJD(int year, int month,double day)
{
long j1;
long j2;
long j3;

j1 = 1461L*(year + 4800L + (month - 14L)/12L)/4L;
j2 = 367L*(month - 2L - (month - 14L)/12L*12L)/12L;
j3 = 3L*((year + 4900L + (month - 14L)/12L)/100L)/4L;
return (double) (day - 32075L + j1 + j2 - j3);
}

UPD: стыдно. Выгуглил первой ссылкой
L после числа показывает компилятору что используется 32-битное число типа long.

Денис Победря
Мегобойанист
Мегобойанист
 
Сообщения: 1037
Зарегистрирован: 03.01.2005 (Пн) 21:29
Откуда: Из Москвы

Сообщение Денис Победря » 11.11.2005 (Пт) 15:14

Не спорю
[Место cдаётся]

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.11.2005 (Пт) 15:47

Вставлю.

dima_C++ писал(а):бейсик да и как VCL не дает представления реальных вещей, ну а если VCL достаточно прозрачен и продуман, то басик ваабще закрытая среда, то бишь черный ящик, вот есть ряд функций, классов и ActiveX - работай, вот это плохо

Ох уж эта чёрных-ящиков-фобия... Достала :-|
Windows - закрытая среда и чёрный ящик. Как тебе не противно программировать под Винду?
Дальше, процессор - закрытая среда и чёрный ящик. Как тебе не противно программировать процессор?


GSerg писал(а):
dima_C++ писал(а):нет оптимизатора логических выражений, это же меня убивает

Оптимизации нет.
Это плата за то, что операторы побитовой логики совпадают с операторами булиновой.
Мы раскладываем выражение на вложенные и не жалуемся.

Оптимизация есть. Но все участвующие в выражении функции вызываются.
Одно другому не противоречит.

(имеется в виду: в выражении If a And (b/123>456) деление и сравнение в случае a=0 выполняться не будет)
Изображение

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 11.11.2005 (Пт) 16:54

Стало быть - битва только началась... :)
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

Пред.

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

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

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

    TopList