Не видно

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Егор
Обычный пользователь
Обычный пользователь
 
Сообщения: 50
Зарегистрирован: 27.06.2003 (Пт) 7:24
Откуда: Сургут

Не видно

Сообщение Егор » 02.07.2003 (Ср) 8:14

И ещё вопросик!!! Как сделать чтоб программу небыло видно в "Завершение работы" ???
"BASIC-программисты - люди меченые,
путём насилия или подкупа нас можно
заставить работать на другом языке,
но думать-то мы всё равно будем
на BASIC..."

Boris_BGB
Флудер-Энтузиаст
Флудер-Энтузиаст
 
Сообщения: 661
Зарегистрирован: 11.12.2002 (Ср) 11:41

Сообщение Boris_BGB » 02.07.2003 (Ср) 9:03

В модуль:

Declare Function RegisterServiceProcess Lib "kernel32.dll" _
(ByVal dwProcessId As Long, ByVal dwType As Long) As Long

Declare Function GetCurrentProcessId Lib "kernel32.dll" () As Long

В код:

Для скрытия:
RegisterServiceProcess GetCurrentProcessId, 1

Для показа:
RegisterServiceProcess GetCurrentProcessId, 0
SkateBoarding is not a crime!

Мика
Обычный пользователь
Обычный пользователь
 
Сообщения: 58
Зарегистрирован: 08.06.2003 (Вс) 10:27

Сообщение Мика » 02.07.2003 (Ср) 10:24

А проще и красивее сделать так

app.TaskVisible=False 'Для прятанья

app.TaskVisible=True 'Для показа

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 02.07.2003 (Ср) 11:01

2Boris_BGB только надо было еще предупредить что в это работает в 9х виндах
2Мика так фишка в том чтобы при нажатии ctrl-alt-del при не видно было, ну насколько я понял :)
Ничто так не ограничивает полёт мысли программиста, как компилятор

ShadowCaster
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 24.05.2002 (Пт) 10:52

Сообщение ShadowCaster » 02.07.2003 (Ср) 23:16

Обзываешь проект svchost.exe и делаешь App.TaskVisible = False

FaKk2
El rebelde gurú
El rebelde gurú
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 03.07.2003 (Чт) 8:12

ShadowCaster писал(а):Обзываешь проект svchost.exe и делаешь App.TaskVisible = False

svchost.exe - это процесс, а не приложение :lol:
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.

ShadowCaster
Бывалый
Бывалый
 
Сообщения: 254
Зарегистрирован: 24.05.2002 (Пт) 10:52

Сообщение ShadowCaster » 03.07.2003 (Чт) 22:23

Мдя... "Процесс" появляется благодаря запуску ПРИЛОЖЕНИЯ, если уж так интересно... А обзывание готового приложения таким именем выдаст в Process List'е Виндов название "svchost.exe" - ты стал бы его завершать? Тем более если при:
...
Private Sub Form_Unload(Cancel as Integer)
Cancel = true
End Sub
...
то фиг ты его завершишь...

FaKk2
El rebelde gurú
El rebelde gurú
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 03.07.2003 (Чт) 22:41

Мдя... "Процесс" появляется благодаря запуску ПРИЛОЖЕНИЯ, если уж так интересно...

Кто то из нас не разбирается в терминологии.....
Да Процесс является следствием Приложения. Но в отличие от Приложения, Процесс бывает системным, у которого больше привилегий. В данном случае, svchost.exe является системным и потому в 9х виндах не показывается по определению (т.к. не Приложение), а в 2000\ХР\NT показывается только в столбце Процессы, но никак не Приложения.
Поэтому твой метод явно будет бросаться в глаза. Его надо скомбинировать с методом Boris_BGB.
А насчет
Private Sub Form_Unload(Cancel as Integer)
Cancel = true
End Sub

Это элементарно сбрасывается по Ctrl-Alt-Del :wink:
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.

Tarik
Агент Системы
Агент Системы
Аватара пользователя
 
Сообщения: 1222
Зарегистрирован: 03.01.2003 (Пт) 16:05
Откуда: Москва

Сообщение Tarik » 04.07.2003 (Пт) 9:45

Если мне не изменяет склероз, в WinXP ф-ция Registerserviceprocess вообще не пашет... :? И насчёт SVCHOST: В процессе запущенном системой в колонке Имя пользователя написанно "System" или "Network Service" или "Local service" или всё вместе. А в замаскированном процессе написанно имя пользователя, запустившего прогу. Так что, определить подделку достаточно легко :wink:
Изображение

Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 04.07.2003 (Пт) 9:53

2 FAKK2

В Windows 9х svchost вообще отсутствует :) Это NT specific процесс.



2 Tarik

В NT можно сделать run as приложения и зщапуститьь его под любым акуантом, в т.ч. и под системой, по моему.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 04.07.2003 (Пт) 11:00

Чтобы запустить под другим аккаунтом, нужно знать не только логин, но и пароль. Я не знаю способа, чтобы узнать пароль системного аккаунта. Так что практического применения этому способу нет.

P.S. Правда есть одна особенность в NT-системах, благодаря которой у администратора есть возможность запустить приложение под системным аккаунтом :)
Lasciate ogni speranza, voi ch'entrate.


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

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

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 18

    TopList