Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: создание dll Добавлено: 11.05.10 14:03  

Автор вопроса:  fifa36
Здравствуйте!
Можно ли на .net версиях бэйсика создавать обычные dll не activeX
порекомендуйте, пожалуйста, хорошую полную книгу по Бэйсик Нет, желательно зарубежного автора.

Спасибо!

Ответить

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

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



Вопросов: 58
Ответов: 4255
 Профиль | | #1 Добавлено: 11.05.10 14:24
В НЕТ не activeX-dll, но и не "обычные" сишные.. Там свои, НЕТ-овские dll..

Ответить

Номер ответа: 2
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #2 Добавлено: 11.05.10 16:23
Подскажите, тогда, плиз
Вообщем задача стоит так, что в подразделении один человек пишет на дэлфи а другой в бэйсике, 6 бэйсик не дает делать библиотеки а дэлфи 7 делает.
Можно ли будет делать в 2008 Студии в Бэйсике, библиотеки, чтобы их можно было вызывать без всяких прописываний пути к ним в реестр, как библиотеки API Windows вообщем.

Ответить

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



Вопросов: 3
Ответов: 64
 Профиль | | #3 Добавлено: 11.05.10 16:40
можно, если слегка отредактировать IL код dll... хотя может есть пути и легче.

Ответить

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



Вопросов: 3
Ответов: 64
 Профиль | | #4 Добавлено: 11.05.10 16:45
p.s. но в любом случае понадобиться .NET =)

Ответить

Номер ответа: 5
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #5 Добавлено: 11.05.10 16:49
в смысле можно даже в Basic 6? а можно поподробней или где можно прочитать?

Ответить

Номер ответа: 6
Автор ответа:
 SSTREGG



Вопросов: 3
Ответов: 64
 Профиль | | #6 Добавлено: 11.05.10 17:00
нет в VB6 ты такого не сделаешь =)

Вот литература: http://www.vijaymukhi.com/documents/books/ilbook/contents.htm
А вот пример для dll: http://blog.undsoft.com/programming/export-managed-to-unmanaged/

Ответить

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



Вопросов: 4
Ответов: 330
 Профиль | | #7 Добавлено: 11.05.10 17:06
насчет нета не знаю, но вот в 6 бэйсике лично создавал длл stdcall стандарта. на этом сайте есть пример хука через такую длл (ghook вроде зовется), но если надо могу скинуть...

Ответить

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



Вопросов: 33
Ответов: 116
 Профиль | | #8 Добавлено: 11.05.10 17:34
SSTREGG:
Прочитал http://www.vijaymukhi.com/documents/books/ilbook/contents.htm
Получается библиотеки созданные на .NET только как COM могут подключаться?
Just - если можно покажи код вызывающий библиотеку, а как же в 6 бэйсике создать библиотеку stdcall стандарта?

Ответить

Номер ответа: 9
Автор ответа:
 SSTREGG



Вопросов: 3
Ответов: 64
 Профиль | | #9 Добавлено: 11.05.10 17:39
fifa36 пишет:
Прочитал http://www.vijaymukhi.com/documents/books/ilbook/contents.htm

О_о всё что-ли?

fifa36 пишет:
Получается библиотеки созданные на .NET только как COM могут подключаться?

Нет. Прочитай пример.

Ответить

Номер ответа: 10
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #10 Добавлено: 11.05.10 17:51
))) ну то есть я прочитал пример имел ввиду) из него следует что на НЕТ не создаш стандартной библиотки чтобы потом вызывать из других сред разработки без регистрации в реестре, кроме как таким экстровагантным способом и то не всегда, так ведь?

Ответить

Номер ответа: 11
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #11 Добавлено: 11.05.10 17:54
хотя как же тогда библиотеки API Windows, значит я ошибаюсь.

Ответить

Номер ответа: 12
Автор ответа:
 SSTREGG



Вопросов: 3
Ответов: 64
 Профиль | | #12 Добавлено: 11.05.10 18:01
в любом случае это не сишные dll, но они используются стандартным методом:
  1. Private Declare Function Имя_Функции Alias "твоя_либа.dll" (...) as ...
или
  1. [DllImport("твоя_либа.dll")]
  2. static extern ... Имя_Функции (...)


я таким образом делал связь C# -> VB6 (заказчик извращенец =))

Ответить

Номер ответа: 13
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #13
Добавлено: 11.05.10 18:18
на FreeBasic отличные, шустрые, да еще и небольшие(от 5кб) dll выходят.
Регистрации не требуют, вызываются как api, в других средах должны работать без проблем.

Ответить

Номер ответа: 14
Автор ответа:
 Just



Вопросов: 4
Ответов: 330
 Профиль | | #14 Добавлено: 11.05.10 18:28
код взял из примера

  1.  
  2. Private Declare Function SetGlobalHook Lib "hook.dll" () As Long
  3. Private Declare Function UnSetGlobalHook Lib "hook.dll" () As Long
  4. Private Sub Command1_Click()
  5. UnSetGlobalHook
  6. Label2.Caption = "Хук убрали..."
  7. End Sub
  8. Private Sub Command2_Click()
  9. Dim m As Long
  10. m = SetGlobalHook
  11. If m > 0 Then Label2.Caption = "Хук установлен, нажимайте любые клавиши и посмотрите C:\hooked.txt"
  12. End Sub



вот сам исходник
http://zalil.ru/upload/29114341

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

Ответить

Номер ответа: 15
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #15
Добавлено: 12.05.10 08:04
SSTREGG пишет:
нет в VB6 ты такого не сделаешь

Тут я бы дал аффтару затрещину и сообщил, что он сильно отстал от прогресса.

Offtop:
Да, я тоже еще пописываю на вб6 и изучаю его недра - я тоже отстал от жизни.

Ответить

Страница: 1 | 2 |

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



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