Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Basic в Basic'е Добавлено: 15.03.08 10:48  

Автор вопроса:  VβÐUηìt | Web-сайт: смекаешь.рф
Функция, выполнающая строку кода VB.

Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Foo1 As Long, ByVal Foo2 As Long, ByVal fCheckOnly As Long) As Long


Вопрос: есть ли функция для выполнения кода VB из нескольких строк, и если есть (а скорее всего есть)), подскажите плиз


Заранее благодарен.

Ответить

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

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



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #1
Добавлено: 15.03.08 13:31
"У функции EbExecuteLine есть один недостаток - она не может обработать символ новой строки (в Бейсике это vbCrLf), но зато она понимает двоеточие (:) и нужно этим воспользоваться. Значит заменяем vbCrLf на двоеточие:
Code = Replace(Code, vbCrLf, ":";)" (с)http://mirpc.narod.ru/koding/stat/vb/74.htm

Ответить

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



ICQ: 298826769 

Вопросов: 53
Ответов: 1732
 Профиль | | #2 Добавлено: 15.03.08 19:30
есть контрол SaxBasic Engine. Гугли. Там со своим редактором ажно.... :)

Ответить

Номер ответа: 3
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #3
Добавлено: 15.03.08 19:50
"У функции EbExecuteLine есть один недостаток - она не может обработать символ новой строки (в Бейсике это vbCrLf), но зато она понимает двоеточие (:) и нужно этим воспользоваться. Значит заменяем vbCrLf на двоеточие:
Code = Replace(Code, vbCrLf, ":";)" (с)http://mirpc.narod.ru/koding/stat/vb/74.htm


Я так и делаю, но вот If'ы с такой фичей не работают. В этом то и вопрос

есть контрол SaxBasic Engine. Гугли. Там со своим редактором ажно.... :)

Ку :)

Ответить

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



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #4
Добавлено: 15.03.08 20:14
Сакс Бэйсик? круто=)))
VBD, ну вот смотри:
If s < 2 Then c = 4: b = 8 Else c = 5: b = 9

равносильно:
If s < 2 Then
    c = 4
    b = 8
Else
    c = 5
    b = 9
End If

и в бейсике работает, End if не нужен

Ответить

Номер ответа: 5
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #5
Добавлено: 16.03.08 10:54
ElseIf; Select Case.

А-а-а-а-а.

:)

Ответить

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



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #6
Добавлено: 16.03.08 16:22
Что ааааа? =)
Не ElseIf, а Else If
Select Case 4: Case 1: Debug.Print 1: Case 2: Debug.Print 2: Case 3: Debug.Print 3: Case 4: Debug.Print 4: Debug.Print 4: End Select

Ответить

Номер ответа: 7
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #7
Добавлено: 16.03.08 16:39
Ясен пень. А как же скриптконтрол?

Ответить

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



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #8
Добавлено: 16.03.08 17:22
А как же скриптконтрол?
ладно, ладно. Я сдаюсь. Я не знаю о чем пошла речь.

Ответить

Страница: 1 |

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



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