张志松
记录工作点滴,留下人生轨迹。(zezese@163.com)
posts - 68,  comments - 11,  trackbacks - 0
1. 代码只占生意的5%

2. 界面很重要,特别是和竞争对手相比

3. 考虑长远

4. 承认你对用户需求的不了解,并改正它

5. 爱你的用户

6. 设计要简洁,再高级的用户也喜欢简洁

7. 向其他领域的人讲述你的想法

8. 勇于删除没用的功能

9. 耐心是一种美德

10. 始终像学习编程一样对待创业

http://sd.csdn.net/a/20120601/2806214.html 
posted @ 2012-06-02 12:12 张志松 阅读(140) | 评论 (0)编辑 收藏
NTDLL.DLL中有一个函数叫NtQueryInformationProcess,用它可以将指定类型的进程信息拷贝到某个缓冲。
其原型如下:

NTSYSAPI
NTSTATUS
NTAPI
NtQueryInformationProcess (
IN HANDLE ProcessHandle, // 进程句柄
IN PROCESSINFOCLASS InformationClass, // 信息类型
OUT PVOID ProcessInformation, // 缓冲指针
IN ULONG ProcessInformationLength, // 以字节为单位的缓冲大小
OUT PULONG ReturnLength OPTIONAL // 写入缓冲的字节数
);
    第一个参数是希望操作的进程句柄,这个句柄必须以PROCESS_QUERY_INFORMATION模式存取。为了取得一个句柄,我们必须用OpenProcess函数:
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION,FALSE,dwProcessID);
    第二个参数是请求信息的类型,这个参数可以有许多个值,本文例子中将用ProcessBasicInformation (值为0)。
    因此,如果第二个参数是ProcessBasicInformation的话,则第三个参数必须为一个指针指向结构PROCESS_BASIC_INFORMATION:
typedef struct
{
      DWORD ExitStatus; // 接收进程终止状态
      DWORD PebBaseAddress; // 接收进程环境块地址
      DWORD AffinityMask; // 接收进程关联掩码
      DWORD BasePriority; // 接收进程的优先级类
      ULONG UniqueProcessId; // 接收进程ID
      ULONG InheritedFromUniqueProcessId; //接收父进程ID
} PROCESS_BASIC_INFORMATION;

   这个结构的最后一个参数是InheritedFromUniqueProcessId,它就是我们所要的东西。

DWORD dwParentPID;
LONG status;
PROCESS_BASIC_INFORMATION pbi;

status = NtQueryInformationProcess( hProcess,
ProcessBasicInformation,
(PVOID)&pbi,
sizeof(PROCESS_BASIC_INFORMATION),
NULL );

if (!status)
dwParentPID = pbi.InheritedFromUniqueProcessId;

http://www.vckbase.com/bbs/prime/viewprime.asp?id=337
posted @ 2012-02-16 17:30 张志松 阅读(885) | 评论 (0)编辑 收藏
实例(Instancing)属性决定自己的类对于使用ActiveX组件的应用程序来说是否可见。若可见,则在任何时候可运行不止一个的实例。

  实例属性有很多选项,我们来看一下:

  MultiUse —— 这可能是最常用的选项。它只提供给其他应用程序一个组件的实例,这个实例可以提供多个对象。这样就节约了内存空间并允许用户共享全局变量。

  Private —— 除该组件内的对象,类对于其他对象是不可见的。它通常用于类单独被类中的其他对象所访问。

  GlobalMultiUse —— 这个类的各种属性和方法可以象简单的全局函数那样被调用。另外,在VB中该类的实例不需要显式创建,因为它会自动创建。各种属性和方法都可从单独的一个组件实例中调用。

  PublicNotCreatable —— 它表示只有在创建实例的前提下,该类才是可见的。换句话说,用户不能用New关键词创建一个类对象。用户的类对象必须选被创建,然后才可使用。这有点像 DAO的记录集,用户不能创建一个新的记录集,而只能用OpenRecordset方法简单地打开它。

  SingleUse —— 它表示每次在代码中开始的一个组件的新的实例,只能运行另一个ActiveX组件的实例。换句话说,每个实例都获得自己的"进程空间"。虽然还有一些限制,没有什么奇怪的,它和MultiUse是相对的。

  GlobalSingleUse —— 类似于GlobalMultiUse,除了代码中创建的对象运行一个组件的新实例。

上述选项,我们很少全部都使用过。毫无疑问,MultiUse是最常见的,其次是Private和GlobalMultiUse,其他的一般很少使用。当然,我们不禁要问,在创建ActiveX DLLs时,我们能得到多少这样的选项呢?答案是明确,因为它们的工作方式是相同的。

原文:http://11lingxian.iteye.com/blog/264971
posted @ 2012-02-12 16:48 张志松 阅读(492) | 评论 (0)编辑 收藏
1.需要引用 Microsoft Internet Controls。

2.工程配置中,“删除有关未使用的 ActiveX 控件的信息” 不能勾选。

3.具体代码如下

Option Explicit
Private WithEvents MyWebBrowser As WebBrowser
Private Sub Command1_Click() '创建
    Set MyWebBrowser = Me.Controls.Add("SHELL.EXPLORER.2", "MyWebBrowser", Me)
    MyWebBrowser.Visible = True
    MyWebBrowser.Move 0, 0, 8000, 3000
    MyWebBrowser.Navigate "http://www.cppblog.com/zezese"
End Sub
Private Sub Command2_Click() '移除
    Me.Controls.Remove "MyWebBrowser"
End Sub

posted @ 2012-02-07 14:19 张志松 阅读(290) | 评论 (0)编辑 收藏

C语言

  函数名:randomize
  功 能:初始化随机数发生器
  用 法:void randomize(void);
  程序例:
  #include <stdlib.h>
  int main(void)
  {
  int i;
  randomize();
  printf("Ten random numbers from 0 to 99\n\n");
  for(i=0; i<10; i++)
  printf("%d\n", rand() % 100);
  return 0;
  }
  注:可以在TC2.0中运行通过,在VC6.0不能运行。


VC中的用法

  VC中使用srand()来初始化为随机数生成器。代码实例:
  #include <stdio.h>
  #include <stdlib.h>
  #include <time.h>
  #define N 10
  main()
  {
  int i;
  srand(time(0)); /*设置种子,并生成伪随机序列*/
  for(i=0;i<N;++i)
  printf("%d\n",rand()%100);/*得到[0,99]伪随机数*/
  system("pause");
  }

VB 中的用法

  Randomize 语句示例
  本示例用 Randomize 语句初始化随机数生成器。由于忽略了数值参数, 所以 Randomize 用 Timer 函数的返回值作为新的随机数种子值。
  Dim MyValue
  Randomize ' 对随机数生成器做初始化的动作。
  MyValue = Int((6 * Rnd) + 1) ' 生成 1 到 7 之间(不包括7)的随机整数。

Delphi 中的用法

  以下事例将随机产生0到100的数字,如果不使用Randomize函数,得到的结果将有规律性。
  procedure TForm1.btn1Click(Sender: TObject);
  begin
  randomize;
  ShowMessage(IntToStr(Random(100)));
  end;

posted @ 2012-02-07 11:08 张志松 阅读(328) | 评论 (0)编辑 收藏

时间管理的七点体会

文/王寒

关于时间管理,不想拾人牙慧Copy Paste一大堆,只想谈一些个人的实际体会。

明确什么是自己“To Be”的目标

很认同永锡的一句话:时间管理的目的是让自己成为一个“幸福行动家”,是从“To Do”到“To Be”的一个必经过程。

很多时间管理理论都提到过,要把事情按重要紧急的程度来分类,但很少有人清楚该如何确定分类。有了“To Be”的定位,再根据自己的实际情况来制订中短期目标,就很容易知道该如何给具体的事情分类。

时间碎片化管理

对于现代人来说,时间被无穷无尽的杂事分割成了无数个小的碎片。 大多数人都处在“To Do”状态,因此需要主动把自己的工作时间分割成小的时间碎片。我曾尝试使用一个小时作为时间碎片单位,后来发现在办公室工作时基本不太可能。后来调整为每半小时一个时间碎片,每个时间碎片要完成某一件工作,或实现某个阶段性的成果。当然,在分割时间碎片时,要考虑自己的工作性质、工作环境、上司和团队成员的做事风格等因素。

此外,时间碎片的长度并非固定不变,要根据实际情况灵活调整。但一旦设定了当前的时间碎片,从开始的那一刻就要全力以赴。

最后,时间碎片可以和场景结合,比如有些事情要出去办,那么最好可以一次出去全部搞定,即便不能全部搞定,也应该取得预定的阶段性成果。

总之,管理时间碎片的原则是:宁愿主动分割,不要被迫分割。

排除工作中的干扰

最难管理的、同时也最不受自己控制的是工作时间中的打扰。

我的做法是:在办公室工作时间,不使用一切即时通信工具,每小时定期看一次是否有电话、短信、QQ。具体来说,首先把手机调成静音,然后是QQ、MSN这类的即时聊天工具,始终设置成隐身或离线状态。尽量使用邮件、微博这种离散通信工具。

排除工作中的干扰,还可以借助头戴式耳机,让自己在音乐中进入沉浸状态。

当然,如果有可能,应该和Boss以及团队成员就时间安排的问题多沟通,争取他们的理解和支持,尽量给自己提供独立完整的时间段,避免随时随地受到干扰。

了解自己的精力曲线

每个人都有自己的精力曲线,需要知道自己什么时间工作效率最高,从而把最难的事情分配到这个时间段的碎片中,而在自己昏昏欲睡、精力不济时可以做点最简单的事情。

随身带上纸和笔

我曾用过很长时间的Things,还试过OmniFocus和其他几款时间管理软件,但现在只保留Things作为备忘录来使用。

目前使用最频繁的时间管理工具,还是纸和笔。我习惯用永锡的方法,在纸上画上两条线组成四个象限,分别代表重要且紧急、重要不紧急、不重要但紧急、不重要也不紧急。

不要花时间find my stuff

其实这个是我的弱项,写上来是要提醒大家,我们每天花在找各种小东西上的时间太多了。比如要吃饭时找钱包、要打电话时找手机、要写东西时找纸和笔。让一切井然有序可以大大节省这方面浪费的时间。

定期总结“To Do”和“To Be”

根据自己“To Be”的目标,定期来总结一下时间管理和自我的进步,无需沮丧,无需自傲,只要每次总结都有点小进步就OK了。

总之,时间管理的目标就是,从当前的“To Do”出发,最终达到“To Be”的状态。让自己来主动管理时间,而不是被时间管理

http://www.programmer.com.cn/9330/

posted @ 2012-01-06 13:39 张志松 阅读(195) | 评论 (0)编辑 收藏
一点是,伟大的产品经理知道什么是他们所不知道的。他们不认为自己知道所有的事情,不知道的事情还是占大多数。他们坚信必须聚集一起才能确定哪些是能做的、哪些是不能做的,所有这些决定都是基于坚实的证据而不是凭空的想法。另一点是,伟大的产品经理知道他们不必是所有想法的源头,这些想法可以来自于世界上的任何地方、公司的所有员工。有时候,客户可能成为关键所在,因为他们知道你所不知道的一些事情。
posted @ 2012-01-06 09:49 张志松 阅读(134) | 评论 (0)编辑 收藏

配置文件路径
C:\Documents and Settings\Administrator\Application Data\SogouExplorer\Config.xml

multicorestrategy="0" 智能模式
multicorestrategy="1" 高速模式
multicorestrategy="2" 兼容模式
posted @ 2012-01-01 10:58 张志松 阅读(360) | 评论 (0)编辑 收藏
仅列出标题  下一页

<2018年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用链接

留言簿(2)

随笔分类

随笔档案

文章分类

文章档案

转载

搜索

  •  

最新评论

阅读排行榜

评论排行榜