Надо программно менять обои на рабочем столе. С реестром разобрался
(проблем нет), но это мало, чтобы обои поменялись надо что-то
типа обновить обои (как кнопка в свойствах экрана применить).
Сделать говорят надо так:
"вызвать что-то вроде SystemParametersInfo
(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_SENDWININICHANGE);
см. msdn по этой функции."
Но мне это ни чего не говорит:-( Может ли мне кто-нибудь кинуть
эксешничек который делает команду "обновить" или можно код на
С++ (есть и немного могу пользоваться Borland C++ Compiler 5.5)
Ответ:
Собственно, ответ уже есть в твоем вопросе :) Надо просто вызвать
указанную функцию.
Обновить рабочий стол:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,NULL,SPIF_SENDWININICHANGE);
return 0;
}
Или сразу поменять обои:
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
TCHAR Wallpaper[] = "путь к картинке";
SystemParametersInfo(SPI_SETDESKWALLPAPER,0,Wallpaper,SPIF_SENDWININICHANGE)
;
return 0;
У меня есть DLL, написанная на Си. Можно ли каким-либо образом
узнать, какие там находятся функции/процедуры и какие параметры
для из вызова они требуют?
Ответ:
Конечно можно!!!
Для этого есть отличная прога, называется Dependency Walker.
Она входит в стандартный пакет Microsoft Visual Studio 6/7, м.б.
и раньше. Правда параметры функций удастся посмотреть, только
если они написаны на C++.
Какие есть способы заставить компонент (например Shape) самому
двигаться по форме ?
Ответ:
У компонента Shape нет методов, позволяющих ему самому двигаться
по форме, зато у него есть свойства Left и Top, определяющие
координаты его левого угла на форме. Их можно изменять. Лучше
всего это делать через Timer (вкладка System). Установите свойство
Interval таймера в 1 и Shape "поедет":
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Shape1.Left := Shape1.Left + 1;
Shape1.Top := Shape1.Top + 1;
end;
Если же использовать такие свойства Shape, как Width и Height,
то можно сделать следующее:
Как сделать, чтобы при растяжении или сжатии формы ее размеры
изменялись только до определенного значения?
Ответ:
Установить
form1.Constraints.MaxHeight:=600;
form1.Constraints.MaxWidth:=800;
И все...
При этом размеры эти будут даже при попытке максимизировать окно.
Есть более сложные методы с использованием обработки системных
сообщений.
Название и версия программы: Diablo II v.1.07
Слышал, что есть во 2-ой Diablo секретный уровень ("коровий").
Как на него попасть? Игра пройдена целиком на норме.
Ответ:
Если пройдены все 4 города в Diablo II либо все 5 в Lord of Destruction,
то попасть на "коровий уровень" можно, соединив в Horadric Cube
книгу портала и ногу Вирта. Ногу Вирта можно найти в городе Тристрам
(памятном по Diablo I), в который можно попасть с помощью портала
с территории Stone Fields в Rogue's Camp.
Имейте в виду, что в Diablo II: Lord of Destruction полностью
пройти The Secret Cow Level можно только один раз. Чтобы сходить
туда несколько раз не убивайте The Cow King.
На сайте установлена гостевая книга.Оставляемые посетителями
сообщения выводятся на ту же страницу,ниже формы для заполнения.После
заполнения формы сообщения пользователь перенаправляется на промежуточную
страницу,где он может выбрать опции возврата на сайт, просмотра
сообщения или выхода с сайта.Так вот,при возврате к просмотру
сообщения страница эта загружается из кэша браузера и новое сообщение
не видно,нужно делать refresh.Конечно, решение можно найти в
настройке браузера на проверку обновления страницы при каждом
визите,но я не могу быть уверен,что у всех моих посетителей браузер
настроен именно так.Так как же можно реализовать обновление страницы
при каждой загрузке? Мета-таг не подходит,это может помешать
при заполнении формы.
Ответ:
Добавьте на страницу тег <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
тогда браузеры не будут кешировать страницу и каждый раз будут
ее обновлять. Или посмотрите на http://www.citforum.ru
как можно указывать время устаревания странички.
У меня на клавиатуре есть три клавиши: Power, Sleep, Wake Up,
но ни одна не работает, посоветуйте как задействовать эти клавиши?
Ответ:
Клавиши Sleep и Wake UP работают только в WinMe, Win2000, WinXP,
так что если Вы сидите на 98 или 98SE, то работать это не будет.
Клавиша Power настраивается через БИОС, там ещё много от чего
комп можно включать:
Всё дело в БИОСе - там можно настроить включение компьютера
и от клавиатуры (разные варианты), и от мыши, и по времени,
и от телефонного звонка, и от сети (что меж компьютеров) -
так что если это напрягает - выключите эти функции. Ещё имейте
в виду - половина этих функций находится в одном пункте меню
БИОСа, половина - в другом. Так как БИОСов великое множество,
а если у Вас мать - ASUS (которая славиться своим извратом
над ним)- сказать в каких именно пунктах это находится, несколько
проблематично. Лично у меня это находится в:
Пункт меню: Integrated Perepherals
4 Опции:
1. Keyboard Power On - вкл/выкл режима включения питания компьютера
от клавиатуры или мыши (Enabled - включено).
2. Power Function - выбор режима включения питания:
Password - включение по вводу пароля
Hot Key - включение по горячим клавишам
Mouse Left - включение по двойному щелчку левой клавиши
мышки
Mouse Right - включение по двойному щелчку правой клавиши
мышки
Button Only - включение по нажатию любой клавиши клавиатуры
Keyboard 98 - включение по нажатию клавиши Power на клавиатуре
(если она есть - должна быть клава со 104 и более кнопками)
3. KB Power On Password - ввод пароля, если выбран режим Password
- включение по вводу пароля.
4. Hot Key Power On - включение по горячим клавишам (выбор от
Ctrl F1 до Ctrl F12) если выбран режим Hot Key.
Пункт меню: Power Managment Setup
5 Опции:
1. Wake Up By PCI Card - включение от PCI карты (например
модем)
2. Power On By Ring - включение от телефонного звонка
3. Wake Up On LAN - включение от вызова по сети
(LAN)
4. USB KB Wake Up - включение от USB клавиатуры
5. Resume By Alarm (Date, Time) - включение по заданной дате
и/или времени
В WinRar 3 есть такая фича, типа задать пароль для архива, то
есть разархивировать можно если введешь пароль. Надежная ли эта
защита??? есть ли какие-нибудь проги, чтобы ставить пароль на
файл или папку (не через архив) и чтобы эту прогу, не надо было
устанавливать (например я запаролировал папку и отдал другу,
а без пароля, ему папку не открыть, или хотя не просмотреть файлы/скопировать)
Ответ:
Пароль в RAR3 достаточно хорошо защищает, на ближайшие пару лет
его точно хватит (10 и более символов в пароле). Программы для
его (пароля) взлома существуют , но подбирать длинный пароль
(с цифрами и буквами в разных регистрах) они будут дооооооолго.
На папку защиту поставить можно но система должна быть NT (2k,
XP) а файловая система NTFS все реализуется средствами ОС, через
свойства папки.
Как организовать аутентификацию пользователя с помощью механизма
сессий. Если пользователь делает попытку зайти на страницу, ему
возвращается форма с полями ЛОГИН, ПАРОЛЬ, которые отправляются
и проверяются скриптом. После опознания зарегистрированного пользователя
скрипт выводит нужную ему информацию. Как сделать такой скрипт
(желательно с примерами) или хотя бы где почитать?
Ответ:
делаешь хтмл файл с формой
форма акшн=скрипт.пхп
логин name=log
пароль name=pas
субмит
/форма
скрипт.пхп
в нем ты получаешь эти переменные и регистрируешь их в сессии
<?
SESSION_START();
SESSION_REGISTER("log","pas");
...
?>
и с этого файла какие сылки будут - везде будет передаваться
сешшн ид там тоже делаешь сешшн старт и получаешь все те переменные,
которые были в сешшн_регистер
смотри Session handling functions мануала пхп
session_start - Initialize session data
session_destroy - Destroys all data registered to a session
session_name - Get and/or set the current session name
session_module_name - Get and/or set the current session module
session_save_path - Get and/or set the current session save path
session_id - Get and/or set the current session id
session_register - Register one or more variables with the current
session
session_unregister - Unregister a variable from the current session
session_unset - Free all session variables
session_is_registered - Find out if a variable is registered
in a session
session_get_cookie_params - Get the session cookie parameters
session_set_cookie_params - Set the session cookie parameters
session_decode - Decodes session data from a string
session_encode - Encodes the current session data as a string
session_set_save_handler - Sets user-level session storage functions
session_cache_limiter - Get and/or set the current cache limiter
session_end - Write session data and end session
session_readonly - Begin session - reinitializes freezed variables,
but no writeback on request end
Можно ли в VB редактировать реестр? Если можно раскажите как
и приведите пожалуйста пример программы(Создание, удаление, редактирования
разделов и параметров)!
Ответ:
Зайдите на сайте http://vbnet.ru
в раздел статьи. Там есть 4 замечательных статьи Михаила Эскина
о работе с реестром из VB6.
Как в Visual Basic загрузить файл (с расширением exe) с сайта,
допустим с http://www.sait.go? Пробовал разные методы и программы,
но не загружает (только в оффлайне).
Ответ:
Попробуй использовать API:
Private Declare Function URLDownloadToFile Lib "urlmon" Alias
"URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String,
ByVal
szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB
As Long)As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
Установлено соединение с Internet. Как незаметно (без всяких
предупреждений) загрузить заданный файи с WEB-узла?
Ответ:
Используйте стандартный элемент управления Internet Control.
Для закачки файла используйте метод OpenURL. Например закачка
файла из сети в локальный файл:
Dim a() as byte
Inet1.Protocol = icHTTP
a() = Inet1.OpenURL(txtURL.Text, icByteArray)
Open "C:\file.txt" For Binary Access Write As #1
Put #1, , a()
Close
Или можно просто прочитать файл в байтовый массив или строковою
переменную:
Dim a As String
a = Inet1.OpenURL(txtURL.Text, icByteArray)
Как в VB можно какой нибудь объект привязать к форме, чтобы он
растягивался вместе с ней? Приведите код или свойство.
Ответ:
Наверное, ты хочешь, чтобы пропорционально менялись не только
размеры, но и положение элемента. Возмьем, например, кнопку.
В декларациях объявляешь
Private kX As Single, kY As Single
Private kLeft As Single, kTop As Single
При загрузке формы высчитываешь коэффициенты, а при изменении
размеров формы изменяешь размеры и положение кнопки в соответствии
с этими коэффициентами.
Как закрыть форму открытую с помощью функции show Form2.Show
Ответ:
Есть два варианта:
1)form2.hide
Как видишь эта функция всего лишь скрывает окно, т.е. оно еще
находится в памяти и содержимое его переменных сохраняется. Например,
есть текстовое поле, ввел что-то, а потом закрыл с помощью Hide
окно, то если его опять показать(Show), то содержимое текстового
поля сохранится.
2)Unload(form2)
Эта функция полностью выгружает окно из памяти, и поэтому все
переменные стираются. Используй тот метод, который больше подходит
в данном случае.
Раньше, давным давно, на компе стояла ICQ не помню уже какой
версии. Так вот, когда кто-то из моего контакт-листа вылазил
в онлайн, то раздавался "тук-тук-тук" и появлялась рожица около
зеленого цветочка в трее. И если к этой рожице подводилась
мышка, то показывался ник того, кто вылез. А вот в современных
версиях ICQ 2002, 2003 такой фишки я не нашел (или ее нет совсем
или нет по умолчанию). Может кто-нить знает как ее включить?
Ответить:
mailto:expert@soobcha.ru?subject=Rass_UQD2R6774X [Наверх]
Тема: Visual_C++
Версия языка: 6.0
Как прямоугольник закрасить кистью, используя тектуру из созданного
в интегрированном редакторе ресурсов, в папке BITMAP растра,
напр. IDB_BITMAP1? или растра, взятого из другого откомпилированного
файла ресурсов, напр. Background.res (ID: BACKGROUND)?
Ответить:
mailto:expert@soobcha.ru?subject=Rass_UQH2DBC147 [Наверх]
Тема: scan
Будте добры, подскажите как решить проблемму. Она заключается
в следующем: имеется сканер Microtek Fantom 636 и к нему диск
ScanWizard. С оперрационной системой Win'98 все благополучно
работало. В данный момент стоит ОС Win' XP и мой старый SkanWizard
с ним работает не корректно. Какой драйвер можно использовать?
На сайте производителя взять драйвер для указанной модели не
удалось и в Win'XP его тоже нет.
Ответить:
mailto:expert@soobcha.ru?subject=Rass_UQH3HJJMC
Марка сканера: Avision 363C
Ваш вопрос: Проблема в том, что при первой попытке сканировать
(текст, графику неважно) сканер становиться в глухой ступор.
В диспетчере устройств показываеться, что процесс сканирования
затягивает на себя 97-99% ресурсов. Попытки снять этот процесс
бесполезны, он все равно остается, помогает только RESET. При
этом во всем остальном машина остается полностью работоспособной,
без всяких тормозов. Примечательно, что под ХР после первого
раза он не сканировал никогда, после 2го перезапуска машины -
очень редко, после 3го перезапуска - чаще, после 4го - всегда
сканирует. Это не связано с прогревом сканера или тем, что было
включено раньше(сканер или машина) - проверено. Да, кстати, этот
сканер не становиться как устройство, в списке устройст его сроду
не было ни под какими осями, но глюк о котором я трепался выше
есть только в ХР. Если у кого такое было поделитесь пожалуйста,
как с этим безобразием бороться...
Ответить:
mailto:expert@soobcha.ru?subject=Rass_UQH2DB6AP [Наверх]