Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];

Вниз

Счетчик запусков программы   Найти похожие ветки 

 
Sphinx   (2005-01-15 22:49) [0]

Может кто посоветует, как сделать счетчик запусков программы, причем без привлечения внешних элементов (файлов, реестра).
То есть данные должны хранится и считыватся в самом ехе файле...


 
Anatoly Podgoretsky ©   (2005-01-15 23:06) [1]

ече это тоже файл, к тому же ты не сможешь в него писать из самой програмы.


 
Sphinx   (2005-01-15 23:21) [2]

> к тому же ты не сможешь в него писать из самой програмы

я именно про это и спрашиваю...что совсем ни как?
а если открыть как поток с расшариванием и прочим???


 
MR. Exx   (2005-01-16 00:10) [3]

Вот есть пример который показывает сколько уже запущено копий программы:

program Schet;

uses SysUtils, WinTypes, WinProcs, WinCrt;

var
NumInstances, SavePrevInst : word;

procedure GetInstanceData(hInst,Offset,Size:Word); far; external "KERNEL";
begin
SavePrevInst := hPrevInst;
NumInstances := 0;
While hPrevInst <> 0 do
 begin
  GetInstanceData(hPrevInst,Ofs(hPrevInst),SizeOf(hPrevInst));
  Inc(NumInstances);
 end;
Writeln("Уже ",NumInstances," программ ");
hPrevInst := SavePrevInst;
end.


 
Sphinx   (2005-01-16 00:15) [4]

> MR. Exx   (16.01.05 00:10) [3]

Спасибо, может и пригодится когда, но мне нужно знать сколько программа запускалась раз...не обязательно одновременно...просто сколько раз запустилась.
При этом не хотелось бы аскать с ехе файлом какой-то файл настроек и лезть в реестр...


 
dimaxx ©   (2005-01-16 00:22) [5]

Можно сделать, но только на время сеанса работы винды. Через GlobalAddAtom записываешь параметр и присваиваешь ему значение. Потом при каждом запуске проверяешь через GetAtomName - есть ли такой атом в системе. Если есть - читаешь счетчик и проверяешь его. Если число превысило число запусков, то говоришь, мол, хватит, поработали. Если нет - увеличиваешь и записываешь снова.

Я читал об этом способе для триал-программ: можно сделать так, чтобы твоя программа запускалась только один раз в сеанс и для повторного запуска приходилось бы перезагружать систему. Это может утомить любого...


 
Vasya.ru ©   (2005-01-16 01:20) [6]

Sphinx   (15.01.05 23:21) [2]
есть извращенный способ, но ИМХО так шаровары не делаются


 
Sphinx   (2005-01-16 02:01) [7]

Да не триал это и не шаровара...
Каюсь...это шутка намечается...
Есть программка, лаба, которую я делаю одной приятельнице...
И прекрасно знаю что эту прогу потом кто-нибудь "подберет" и представит как свою (исходники преподом не просматривают, только готовый ехе). Так вот и хочу устроить подлянку любителям халявы, поэтому собственно и нужна независимость от записей в реестре и дополнительных фалов. Настроить её на 2-3 (запас на демонстрацию) запуска и всё...а потом пусть "подберают" ну запустится она у них один-два раза (должны же они посмотреть как она работает) и всё....а потом засыпать какими-нибудь AV раз счетчик исчерпан...


 
z007   (2005-01-17 00:31) [8]

1.Этого никогда не удастся добиться с файлом на CD.
2. При записи на hdd файла с дискеты и запуске с диска, на дискете остается девственно чистая копия.

Ненадежные решения:

1. При закрытии извлекаем маленький exe (из ресурса) и им пишем в наш файл все, чего надо.

2. При запуске создаем копию программы с увеличенным на 1 счетчиком запусков, при закрытии удаляем предыдущую копию.


 
Eraser ©   (2005-01-17 01:08) [9]

Sphinx   (16.01.05 02:01) [7]

Да не триал это и не шаровара...
Каюсь...это шутка намечается...

Может против этих любителей халявы и реестр сойдёт? ;-) создай неприметный ключик, где нибудь подальше с зашифрованным именем и данными и запокуй прогу ASProtect (ну или ASPack накрайняк) и бОлбшая часть недоброжелателей исчезнет, а те кто смогут крякнуть прогу.... им она на ... не нужна ;-))


 
Германн ©   (2005-01-17 02:48) [10]

2 Sphinx   (16.01.05 02:01) [7]
>Так вот и хочу устроить подлянку любителям халявы

Т.е. Sphinx хочет получить на форуме халяву, чтобы "устроить подлянку иным любителям халявы"!?


 
Германн ©   (2005-01-17 02:48) [11]

2 Sphinx   (16.01.05 02:01) [7]
>Так вот и хочу устроить подлянку любителям халявы

Т.е. Sphinx хочет получить на форуме халяву, чтобы "устроить подлянку иным любителям халявы"!?


 
BiN ©   (2005-01-17 10:59) [12]

Sphinx   (15.01.05 22:49)

Сделай активацию ч-з интернет ;)


 
Eraser ©   (2005-01-17 13:46) [13]

BiN ©
Кстати через ShareIt это можно сделать бесплатно...



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.049 c
1-1108460961
Gost
2005-02-15 12:49
2005.02.27
Как сделать форму для ввода пароля?


6-1103163658
Rat
2004-12-16 05:20
2005.02.27
Запуск приложения с другого компьютера


1-1108003250
vidiv
2005-02-10 05:40
2005.02.27
Защита программы от копирования.


14-1107775727
Vasya.ru
2005-02-07 14:28
2005.02.27
А какие вообще разрешения экранов бывают?


1-1108463354
Толян
2005-02-15 13:29
2005.02.27
Клавиши





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский