可以在程序创建时建立一个有唯一名字的系统内核,如内存映像文件。程序运行时自动将内核中的数据加1,结束时减1。

解决方案 »

  1.   

    写一个com+好了,系统会将你的程序的ref加一的。
      

  2.   

    程序创建时内核对象的引用计数就自动+1了呀,当你CloseHandle的时候引用计数就-1了呀。你为什么还要自己去做?
      

  3.   

    用CreateMutex创建内核对象。创建时自动加1,正常或者非正常退出,操作系统都会自动销毁该对象。不知道能不能解决你的问题?另外COM对象是自动增减引用计数的。
      

  4.   

    用物理文件吧,比如在程序目录创建data.dat什么的。因为如果用内存映射文件的话,创建该映射的程序结束时必须释放该映射文件,而你这个数据好像要一直使用。