Как возвращать значения от консольного приложения ?

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

KAPACb
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.05.2006 (Сб) 10:29

Как возвращать значения от консольного приложения ?

Сообщение KAPACb » 18.01.2007 (Чт) 12:42

Sub Main()

не предполагает возврат чего-либо...

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 18.01.2007 (Чт) 15:35

А куда Вы собиаретесь вернуть значение?
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

KAPACb
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.05.2006 (Сб) 10:29

Сообщение KAPACb » 18.01.2007 (Чт) 16:13

вообще-то программы по завершении работы имеют дурную привычку возвращать значения вызвавшему их объекту (0 - успешно, всё остальное - ошибки).

лично мне в данном конкретном случае нужно, чтобы моя программа возвращала результат выполнения windows sheduler'у

в си, например, Main - это функция, и значение, которое она возвращает - как раз и является результатом выполнения всей программы.

Тут однако это Sub, который возвращать ничего не может по определению (не считая byRef), собственно, в этом и вопрос.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 19.01.2007 (Пт) 12:32

Main вполне может быть и функцией... так что возвращай
Весь мир матрица, а мы в нем потоки байтов!

KAPACb
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.05.2006 (Сб) 10:29

Сообщение KAPACb » 19.01.2007 (Пт) 13:25

а каким образом объявить ?

Когда я пишу Function Main (), то он ругается, что не может найти точку входа

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.01.2007 (Сб) 7:35

Варианты:

Код: Выделить всё
Function Main(ByVal cmdArgs() As String) As Integer
Function Main() As Integer
Sub Main(ByVal cmdArgs() As String)
Sub Main()


Естественно Main должна быть Public и, если она в модуле класса, то еще и Shared.
Весь мир матрица, а мы в нем потоки байтов!

KAPACb
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.05.2006 (Сб) 10:29

Сообщение KAPACb » 22.01.2007 (Пн) 11:23

работает в варианте

Код: Выделить всё
Public Function Main() As Integer


в свойства проекта в "Application" - "Startup object" поставил модуль, содержащий эту функцию.

спасибо.


Вернуться в Visual Basic .NET

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

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

    TopList