1

Konu: Bir Projenin Kaç Defa Açıldığını Öğrenmek

Arkadaşlar Hepinize Merhaba Benim Sorum Bir Exe Dosyasının sistemde kaç defa çalıştığını öğrenmek acaba bunu vfp da yapmak mümkün mü ?
Yardımlarınız İçin Şimdiden teşekkürler

2

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

şöyle yapabilirsin bence,Program her çalıştırıldığında,Bir tabloya sayacın değerini bir artırıp okuyup yazabilirsin.ben buna benzer bir şey yapmıştım.Ama ne fayda sağlayacak onu anlamadım üsdat..

En büyük sermaye nakit,nakit sermaye vakittir...

3

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

Ya benim istediğim windows görev yöneticisinden bakması

4

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

bir dbf yap
her açıldığında, tarih,saat,kullanıcı, exe içerisinde çalışan formlar... herşeyi saklayabilirsin.
SDI formun Destroy Eventine de kapanış kayıtlarını alabilirsin.

VFP9 SP2

5

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

şimdi şöle dbf benim işimi ne yazıkki çözmüyor çünkü mesela elektrik gitti pc kullanıcının isteği dışı bi koşuldan kapandı.Bu gibi durumlarda dbf dosyası hem zarar görme riski büyük hemde programın giriş bilgilerini ayıklama gibi bi olayla karşı karşıya kalıyorum bunun için acaba program çalıştığı vakit bunu görev yöneticisinden veya herhangi bi yerden kaç defa çalıştığı bilgisine ulaşamazmıyım ?
veya sizin öneriniz ne olur ?

6

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

Birnefes yazdı:

Arkadaşlar Hepinize Merhaba Benim Sorum Bir Exe Dosyasının sistemde kaç defa çalıştığını öğrenmek acaba bunu vfp da yapmak mümkün mü ?
Yardımlarınız İçin Şimdiden teşekkürler


exe dosyasi bir tanemi. yoksa calisan her exe icin istatistik gibi biseymi istiyorsunuz ??
eger exe bir taneyse ve kendi programinizsa program calisir calismaz bir text dosyasina icerigindeki sayiyi bir artirarak yazmaniz bu sorununuzu cozer diye dusunuyorum. w task managerin boole bir ozelligi oldugunu hic duymadim

7

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

Benim aklıma gelen de şu. Bir mem file oluşturup;

Restore from (memory dosya adı) additive
v_sayi=v_sayi+1
Save to (memory dosya adı) all like  V_*
Mu şekilde program her açıldığında sayı bir artırılabilir.
Bunun gibi *.mem de birçok bilgi saklanabilir.

8

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

Çok eskiden yazmıştım bu kodu.Task manager vari birşey.
Sana fikir verebilir

Visual Fox Pro
_Screen.visible = .f.

oForm = createobject('MyForm')
oForm.Show
oForm.List1.RowSource = oForm.List1.RowSource + "0,Hide,"
oForm.List1.RowSource = oForm.List1.RowSource +    "1,ShowNormal,"
oForm.List1.RowSource = oForm.List1.RowSource +    "2,ShowMinimized,"
oForm.List1.RowSource = oForm.List1.RowSource +    "3,ShowMaximized,"
oForm.List1.RowSource = oForm.List1.RowSource +    "4,ShowNoActivate,"
oForm.List1.RowSource = oForm.List1.RowSource +    "5,Show,"
oForm.List1.RowSource = oForm.List1.RowSource +    "6,Minimize,"
oForm.List1.RowSource = oForm.List1.RowSource +    "7,ShowInNoActivate,"
oForm.List1.RowSource = oForm.List1.RowSource +    "8,ShowNa,"
oForm.List1.RowSource = oForm.List1.RowSource +    "9,Restore,"
oForm.List1.RowSource = oForm.List1.RowSource +    "10,ShowDefault,"
oForm.List1.RowSource = oForm.List1.RowSource +    "11,ForceMinimize"
 
Read events
_Screen.visible = .t.
 
Define CLASS MyForm AS form
 
    Height = 286
    Width = 607
    ShowWindow = 2
    DoCreate = .T.
    AutoCenter = .T.
    Caption = "Çalışan Programlar"
    Name = "Form1"
    *HWnd = .F.
 
    Add OBJECT list1 AS listbox WITH ;
        ColumnCount = 2, ;
        ColumnWidths = "0,250", ;
        RowSourceType = 1, ;
        Enabled = .T., ;
        Height = 228, ;
        Left = 12, ;
        Top = 12, ;
        Width = 156
        Name = "List1"
 
    Add OBJECT command1 AS commandbutton WITH ;
        AutoSize = .T., ;
        Top = 252, ;
        Left = 12, ;
        Height = 27, ;
        Width = 106, ;
        Caption = "Komudu Uygula", ;
        Enabled = .T., ;
        Name = "Command1"
 
    Add OBJECT list2 AS listbox WITH ;
        BoundColumn = 2, ;
        ColumnCount = 2, ;
        ColumnWidths = "500,0", ;
        RowSourceType = 6, ;
        RowSource = "programs.adi,hwnd", ;
        Height = 228, ;
        Left = 168, ;
        Top = 12, ;
        Width = 432, ;
        Name = "List2"
 
    Add OBJECT command2 AS commandbutton WITH ;
        Top = 252, ;
        Left = 516, ;
        Height = 27, ;
        Width = 84, ;
        Caption = "Listeyi Yenile", ;
        Name = "Command2"
 
    Add OBJECT command3 AS commandbutton WITH ;
        AutoSize = .T., ;
        Top = 252, ;
        Left = 384, ;
        Height = 27, ;
        Width = 117, ;
        Caption = "Uygulamayı Kapat", ;
        Name = "Command3"
 
    Procedure QueryUnload
        Clear events
    Endproc
 
    Procedure Load
    Declare INTEGER SendMessage IN WIN32API ;
        INTEGER hWnd, ;
        INTEGER Msg, ;
        INTEGER wParameter, ;
        INTEGER lParameter
    Declare integer ShowWindow in win32api integer i1, integer i2
    Declare INTEGER GetDesktopWindow IN Win32API
    Declare INTEGER GetWindow IN Win32API;
        INTEGER hwnd, INTEGER dflag
    Declare INTEGER GetWindowText IN Win32API ;
        INTEGER hwnd, STRING @lptstr, INTEGER cbmax
 
    Local lnhwnd, lnnext, lldone, lctitle_bar, lcsearchfor,;
        lntext_len
    Create CURSOR PROGRAMS (ADI C(201),hwnd n (12))
    lnhwnd = GetDesktopWindow()
    lnhwnd = GetWindow(lnhwnd, 5) && Get first child window
    lnnext = 2
    lldone = .F.
    lctitle_bar = ""
    Do WHILE NOT lldone
        If NOT EMPTY(lnhwnd)
            lctitle_bar = SPACE(200) + CHR(0)
            lntext_len = GetWindowText(lnhwnd, @lctitle_bar, 200)
            lctitle_bar = UPPER(LEFT(lctitle_bar, lntext_len))
            If LEN(ALLTRIM(lctitle_bar)) > 0
                Insert INTO PROGRAMS (ADI,hwnd) VALUES (lctitle_bar,lnhwnd)
            Endif
            If NOT lldone
                lnhwnd = GetWindow(lnhwnd, lnnext)
            Endif
        Else
            lldone = .T.
        Endif
    Enddo
    Endproc
 
    Procedure command1.Click
        ShowWindow(val(ThisForm.list2.value),VAL(ThisForm.list1.VALUE))
    Endproc
 
    Procedure command2.Click
        Thisform.load
        Thisform.list2.refresh
    Endproc
 
    Procedure command3.Click
        =SendMessage(val(ThisForm.list2.value), 0x0112, 0xF060, 0)
        Thisform.load()
        Thisform.list2.refresh
    Endproc
 
Enddefine

9

Re: Bir Projenin Kaç Defa Açıldığını Öğrenmek

ustad çok sağol çok işime yaradı ellerine sağlık