Scope of Dll


DevX Home    Today's Headlines   Articles Archive   Tip Bank   Forums   

Results 1 to 5 of 5

Thread: Scope of Dll

  1. #1
    supriya Guest

    Scope of Dll



    The problem is such.
    We are developing an application in VB6 and MS-access.
    I hav a problem in maintaining its security aspect.
    For its security measure i.e for example, if i create and instance of the
    dll for the first time, the current date should be taken and stored, for
    example if the licence is valid for 30 days. the very first time i install
    in my system, i should store the current date.
    It should be within the dll, and if the next time if i start up the instance
    i should get the last assigned value.
    Or in simple words i want
    In DLL the scope of the variable as public even after creating instance

    I do not want to store the value in the registry.


    Please anyone help. I am stuck up here.






  2. #2
    Arthur Wood Guest

    Re: Scope of Dll


    You don't have any other choice---you CANNOT actually store the Date IN THE
    DLL, as the DLL is COMPILED code, and trying to "change" it at execution
    time would be EXTREMELY "dangerous", as you would need to employ a HEX editor,
    and KNOW EXACTLY which bits, in the compiled code, were to be changed. Why
    do you NOT want to use the System Registry?

    If you encrypt the value, then the user can't change it directly, and if
    you are worried about the user changing the System Date, there are methods
    that you can employ, to detect and invalidate such changes, as well.

    Arthur Wood


    "supriya" <vb.@127.0.0.1> wrote:
    >
    >
    >The problem is such.
    >We are developing an application in VB6 and MS-access.
    >I hav a problem in maintaining its security aspect.
    >For its security measure i.e for example, if i create and instance of the
    >dll for the first time, the current date should be taken and stored, for
    >example if the licence is valid for 30 days. the very first time i install
    >in my system, i should store the current date.
    >It should be within the dll, and if the next time if i start up the instance
    > i should get the last assigned value.
    >Or in simple words i want
    >In DLL the scope of the variable as public even after creating instance
    >
    >I do not want to store the value in the registry.
    >
    >
    >Please anyone help. I am stuck up here.
    >
    >
    >
    >
    >



  3. #3
    Supriya Guest

    Re: Scope of Dll


    Arthur,

    I want it such, for example the licence is valid up to 30 days,
    after 20 days of installation of the application, the person can deinstall
    it and again install that,so again the product can be used, we hav the option
    to stop deinstalling the value from registry but eventhough its encripted,
    he can find it out manually and remove it or change it.
    is there any option that we can avoid deleting key from the registry or stop
    a person from changing the value.
    I donot want to store that in a dat file in an encripted format even.

    is there any other solution available to solve this problem.
    Plez help





    "Arthur Wood" <wooda@nospam.com> wrote:
    >
    >You don't have any other choice---you CANNOT actually store the Date IN

    THE
    >DLL, as the DLL is COMPILED code, and trying to "change" it at execution
    >time would be EXTREMELY "dangerous", as you would need to employ a HEX editor,
    >and KNOW EXACTLY which bits, in the compiled code, were to be changed.

    Why
    >do you NOT want to use the System Registry?
    >
    >If you encrypt the value, then the user can't change it directly, and if
    >you are worried about the user changing the System Date, there are methods
    >that you can employ, to detect and invalidate such changes, as well.
    >
    >Arthur Wood
    >
    >
    >"supriya" <vb.@127.0.0.1> wrote:
    >>
    >>
    >>The problem is such.
    >>We are developing an application in VB6 and MS-access.
    >>I hav a problem in maintaining its security aspect.
    >>For its security measure i.e for example, if i create and instance of the
    >>dll for the first time, the current date should be taken and stored, for
    >>example if the licence is valid for 30 days. the very first time i install
    >>in my system, i should store the current date.
    >>It should be within the dll, and if the next time if i start up the instance
    >> i should get the last assigned value.
    >>Or in simple words i want
    >>In DLL the scope of the variable as public even after creating instance
    >>
    >>I do not want to store the value in the registry.
    >>
    >>
    >>Please anyone help. I am stuck up here.
    >>
    >>
    >>
    >>
    >>

    >



  4. #4
    Jason hawryluk Guest

    Re: Scope of Dll

    here is an off the wall idea (maybe stupid) though i have never attempted
    it, why not add a resource file to you appp and store in that? i have seen
    programmes that change the resource file string tables in an dll or exe so
    changing this must be possible. I also second the encryption idea wich ever
    way you deside to go.

    jason

    "Supriya" <supriya@inooga.com> a écrit dans le message news:
    3d51f342@10.1.10.29...
    >
    > Arthur,
    >
    > I want it such, for example the licence is valid up to 30 days,
    > after 20 days of installation of the application, the person can deinstall
    > it and again install that,so again the product can be used, we hav the

    option
    > to stop deinstalling the value from registry but eventhough its encripted,
    > he can find it out manually and remove it or change it.
    > is there any option that we can avoid deleting key from the registry or

    stop
    > a person from changing the value.
    > I donot want to store that in a dat file in an encripted format even.
    >
    > is there any other solution available to solve this problem.
    > Plez help
    >
    >
    >
    >
    >
    > "Arthur Wood" <wooda@nospam.com> wrote:
    > >
    > >You don't have any other choice---you CANNOT actually store the Date IN

    > THE
    > >DLL, as the DLL is COMPILED code, and trying to "change" it at execution
    > >time would be EXTREMELY "dangerous", as you would need to employ a HEX

    editor,
    > >and KNOW EXACTLY which bits, in the compiled code, were to be changed.

    > Why
    > >do you NOT want to use the System Registry?
    > >
    > >If you encrypt the value, then the user can't change it directly, and if
    > >you are worried about the user changing the System Date, there are

    methods
    > >that you can employ, to detect and invalidate such changes, as well.
    > >
    > >Arthur Wood
    > >
    > >
    > >"supriya" <vb.@127.0.0.1> wrote:
    > >>
    > >>
    > >>The problem is such.
    > >>We are developing an application in VB6 and MS-access.
    > >>I hav a problem in maintaining its security aspect.
    > >>For its security measure i.e for example, if i create and instance of

    the
    > >>dll for the first time, the current date should be taken and stored, for
    > >>example if the licence is valid for 30 days. the very first time i

    install
    > >>in my system, i should store the current date.
    > >>It should be within the dll, and if the next time if i start up the

    instance
    > >> i should get the last assigned value.
    > >>Or in simple words i want
    > >>In DLL the scope of the variable as public even after creating instance
    > >>
    > >>I do not want to store the value in the registry.
    > >>
    > >>
    > >>Please anyone help. I am stuck up here.
    > >>
    > >>
    > >>
    > >>
    > >>

    > >

    >




  5. #5
    Steve Guest

    Re: Scope of Dll


    Well, in all honesty, even if you Hex edit the value into the DLL, you still
    have the exact same problem. If they delete the DLL and re-copy it onto the
    machine, the same thing occurs.

    Nearly every application out there that "persists" a activation period over
    an uninstall/delete uses either a hidden file in a common location like the
    Windows/System directory or a vague and encrypted key in the registry. (I.e.
    don't use something obvious like: "LOCAL_MACHINE\Software\MyCompany\MyApplication\DaysLeft"
    There are libraries that you can buy that implement multi-day licenses
    and camoflage them pretty well, and even support product activation where
    you can provide the user with a code to remove the demo check.

    No matter what you do, someone will crack it if they really want to. All
    you can hope to do is make it inconvenient enough to track down to keep most
    people honest.

    Steve.

    "Supriya" <supriya@inooga.com> wrote:
    >
    >Arthur,
    >
    >I want it such, for example the licence is valid up to 30 days,
    >after 20 days of installation of the application, the person can deinstall
    >it and again install that,so again the product can be used, we hav the option
    >to stop deinstalling the value from registry but eventhough its encripted,
    >he can find it out manually and remove it or change it.
    >is there any option that we can avoid deleting key from the registry or

    stop
    >a person from changing the value.
    >I donot want to store that in a dat file in an encripted format even.
    >
    >is there any other solution available to solve this problem.
    >Plez help
    >
    >
    >
    >
    >
    >"Arthur Wood" <wooda@nospam.com> wrote:
    >>
    >>You don't have any other choice---you CANNOT actually store the Date IN

    >THE
    >>DLL, as the DLL is COMPILED code, and trying to "change" it at execution
    >>time would be EXTREMELY "dangerous", as you would need to employ a HEX

    editor,
    >>and KNOW EXACTLY which bits, in the compiled code, were to be changed.


    >Why
    >>do you NOT want to use the System Registry?
    >>
    >>If you encrypt the value, then the user can't change it directly, and if
    >>you are worried about the user changing the System Date, there are methods
    >>that you can employ, to detect and invalidate such changes, as well.
    >>
    >>Arthur Wood
    >>
    >>
    >>"supriya" <vb.@127.0.0.1> wrote:
    >>>
    >>>
    >>>The problem is such.
    >>>We are developing an application in VB6 and MS-access.
    >>>I hav a problem in maintaining its security aspect.
    >>>For its security measure i.e for example, if i create and instance of

    the
    >>>dll for the first time, the current date should be taken and stored, for
    >>>example if the licence is valid for 30 days. the very first time i install
    >>>in my system, i should store the current date.
    >>>It should be within the dll, and if the next time if i start up the instance
    >>> i should get the last assigned value.
    >>>Or in simple words i want
    >>>In DLL the scope of the variable as public even after creating instance
    >>>
    >>>I do not want to store the value in the registry.
    >>>
    >>>
    >>>Please anyone help. I am stuck up here.
    >>>
    >>>
    >>>
    >>>
    >>>

    >>

    >



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center
 
 
FAQ
Latest Articles
Java
.NET
XML
Database
Enterprise
Questions? Contact us.
C++
Web Development
Wireless
Latest Tips
Open Source


   Development Centers

   -- Android Development Center
   -- Cloud Development Project Center
   -- HTML5 Development Center
   -- Windows Mobile Development Center