Автор: Пользователь скрыл имя, 20 Декабря 2011 в 03:03, курсовая работа
В данной курсовой работе рассмотрена программа-резидент, остающаяся в памяти после закрытия окна программы и обозначающая свое присутствие значком в трее.
Цель работы состоит в разработке программы-резидента, делающей снимок экрана с заданной периодичностью и сохраняющая файлы в выбранной папке.
Введение 5
1. Постановка задачи и ее решение 6
1.1. Формулировка задачи 6
1.2 Спецификация задачи 6
2 Техническая реализация алгоритма решения 6
2.1 Выбор языка и среды программирования 6
2.2 Описание алгоритмов и программы 6
2.3 Описание методов программирования 8
3 Тестирование программы 11
Заключение 13
Список литературы 14
Приложение А. Листинг программы 15
timer1.Interval = inter;
timer1.Enabled = true;
}
ContextMenu CreateMenu()
{
ContextMenu menu = new ContextMenu(new MenuItem[]{
new MenuItem(ITEM_SHOW_WINDOW),
new MenuItem(ITEM_HIDE_WINDOW),
new MenuItem(ITEM_EXIT_
menu.MenuItems[1].Enabled = false;
foreach (MenuItem menuItem in menu.MenuItems)
menuItem.Click += new EventHandler(OnMenuItemClick);
return menu;
}
//Делаем доступным пункт Hide, а пункт Show - запрещаем
protected override void OnLoad(EventArgs e)
{
notifyIcon.ContextMenu.
notifyIcon.ContextMenu.
}
//Делаем доступным пункт Show, а пункт Hide - запрещаем
protected override void OnClosed(EventArgs e)
{
notifyIcon.ContextMenu.
notifyIcon.ContextMenu.
}
//Анализируем какой MenuItem clik'нули и выполняем соответствующее действие
void OnMenuItemClick(object sender, EventArgs e)
{
MenuItem menuItem = sender as MenuItem;
switch (menuItem.Text)
{
case ITEM_SHOW_WINDOW:
ShowDialog();
break;
case ITEM_HIDE_WINDOW:
Close();
break;
case ITEM_EXIT_APPLICATION:
//Убираем иконку из system tray
notifyIcon.Visible = false;
//Завершаем приложения
Application.Exit();
break;
}
}
private Bitmap TakeScreenShot(Screen currentScreen)
{
Bitmap
bmpScreenShot = new Bitmap(currentScreen.Bounds.
Graphics
gScreenShot = Graphics.FromImage(
gScreenShot.CopyFromScreen(
return bmpScreenShot;
}
public string S = "";
public int i = 0;
public string
Ss = "";
private void timer1_Tick_1(object sender, EventArgs e)
{
Screen scr = Screen.PrimaryScreen;
Image img = TakeScreenShot(scr);
img.Save(@""+S+"\\screen" + i + ".jpg", ImageFormat.Jpeg);
i++;
}
private void button1_Click(object sender, EventArgs e)
{
Close();
}
private void button2_Click(object sender, EventArgs e)
{
//Убираем иконку из system tray
notifyIcon.Visible = false;
//Завершаем приложения
Application.Exit();
}
private void button3_Click(object sender, EventArgs e)
{
if
(folderBrowserDialog1.
{
textBox2.Text = folderBrowserDialog1.
}
S = textBox2.Text;
}
}
}