1CM

  

#

如何让下属认可自己?

  此时,犹豫一点意义也没有,只有来谈论一下,接下来究竟要怎么做?
   
  首先你要有信心,相信企业不会无故提拔你,也相信自己可以逐渐做好管理类型的工作,不要在做管理的初期给自己制定过高的目标,也不要过于在于人们的评价和态度,这些只会给你带来更多的挫折感。
   
从操作层面来看,被提拔为管理岗位后,所面临的不再是某个具体的工作职责,而是更多内容的复杂局面。所以首先告诉自己不要乱了阵脚,关键要搞清楚以下几 个基本点:部门的具体职责、目前部门业务运转状况、部门成员以及各自的特长与特点、上层对自己的期望等。在这些基本信息都基本掌握之后,找到部门目前的关 键问题所在,从小的范围开始做起,也可以从自己比较擅长的方面作起,逐步在部门内树立自己的威信。操作过程中的沟通问题与全面的思考十分重要,《职业成熟度测评》可以在这个方面有效地帮助你,了解自己目前沟通、协作能力的状况,以及如何改善。
   
  俗话说:“新官上任三把火”,尽量避免在上任初期犯错,哪怕维持现场一段时间也无妨。

posted @ 2007-04-06 13:57 1CM 阅读(132) | 评论 (0)编辑 收藏

我已经不敢提出自己的意见了

  你面临的问题,是典型的职业成熟度问题。

  在部门里,你的意见如果总是得到不到同事的认同和支持,可能存在以下3个原因:1、你的意见让人觉得很不成熟,可行性很小;2、你的意见触及到了同事的利益;3、你让人觉得你仅仅是在表现自己。
  
  你的测评结果显示,方法策略是你成熟度中的短板。这个维度十分重要,它直接影响你在工作中的各种表现。建议你根据报告中给你的建议,快速提升自己的职业成熟度。

  提升需要有个过程,下次再提出自己的意见或建议时,要注意:1、提意见,需要三思而后行,做好充分的准备以后再行提出,尽量考虑到可能面对的疑问,否则一提出来就马上遭到同事的质疑,你还无话可说。2、在每次有了新的想法之前,从侧面了解一下同事对这些事情的看法是怎样的。3、注意表达的方式、方法。如果你是新同事的话,更要保持一种谦逊的态度,不要让别人觉得你想借着提意见来表现自己。

posted @ 2007-04-06 13:55 1CM 阅读(118) | 评论 (0)编辑 收藏

我该怎么才能提高在同事中的威望?

  我有个问题,虽然我年龄还不是很大,但我个希望被别人认可的人,该怎样提高在同事心目中的威望呢?我还没有做测评,你们的测评能帮我解决这个问题吗?

专家答:

  测评不是尚方宝剑,无法直接给你带来威望。所以,解决你的问题,要先谈威望通常怎么建立,再谈测评对你是否有帮助。
在企业中,威望往往来自三个方面:

  1、职位。如果你在公司坐拥一定高度的职位,而且自己还对部门职责与下属驾御有方,自然会为你带来威望。

  2、业绩。如果说职位带来的威望未必能够服众的话,那么业绩带来的威望就算是真正的实力派了,例如很多top sales在各自的公司都拥有一呼百应的威望。

  3、年纪+为人,也就是人们总说的“德高望重”,二者缺一不可!
  
  显然,最后一条途径目前离你很远。

  如何得到一个更好的职位,职业成熟度在其中起着重要作用。是否能够灵活地解决复杂的问题,是否能够与上、下级以及部门之间达成良好的沟通氛围,是决定你是否被晋升的关键因素。

  如何取得一个好的业绩,成熟度测评的价值在于如何锁定你的成果,避免自己的努力成为他人嫁衣。与工作业绩密切相关的另一个重要因素,是你的职业核心能力。如果你现在面临的问题不是如何锁定成果,而是做出成果,成熟度测评对你的帮助不够直接,建议你先去了解自己的职业核心能力,先了解自己擅长做什么。

posted @ 2007-04-06 13:53 1CM 阅读(170) | 评论 (0)编辑 收藏

与公司同事做朋友,到底是有利还是有弊?

先来说说目前的问题。这个问题的答案其实只有一个字:度!

  在公司中与同事相处融洽,沟通顺畅,生活上相互关心,甚至在很多公司中同事之间,形成了一种家人的感觉,都是比较良性的关系,也是有助于职业发展的一种“朋友关系”。
  
  有这样几种朋友关系,就突破了与同事成为朋友该有的度,也就成为不利于职业发展的因素:
  
  1、排他性朋友关系。也就是通常说的小团伙,无论是上司还是其他同事,都不会对这种“朋友”关系持有任何善意的态度
  
  2、秘密分享型朋友。这里既指公司的秘密,也包括私人秘密。
  
  3、上下级之间的亲密朋友。上下级之间严格意义上讲是存在冲突的,如果上下级之间成为过于亲密的好朋友,那么上级将面临着效率下降、人际冲突等风险,而下级则面临着过分依赖、拔苗助长等风险,对二者的职业发展都没有益处。

  再来说说你,报告显示,你的其他维度还好,但是“心态与视角”和“主动性”维度的分数很低。对你而言,心态视角是因,主动性是果。

  (不知道你是否做过方向定位测评,如果你的性格特点是强情感,那你的问题就很麻烦了!)

  单纯也好,善良也好,你在用自己的标准看待职场,这很危险。你忽略了最有POWER的人——老板;

posted @ 2007-04-06 13:45 1CM 阅读(143) | 评论 (0)编辑 收藏

利用与设备无关的位图输出功能,实现淡出的效果

*在显示卡支持256以上时通过调色板时得不到满意的结果。
*位图必须是256以及小于256色的,因为大于256色的位图
*没有调色板;

1、把位图文件读入内存
在响应的结构中复制内存的数据,或把指针指向响应的位置,
具体的操作在这里不叙述
BITMAPINFO       *lpbi;
BITMAPFILEHEADER bfh;
BITMAPINFOHEADER bih;
RGBQUAD          *lpRGB;
BYTE *lpData=NULL;
2、利用SetDIBitsToDevice函数输出
ret=SetDIBitsToDevice(pDC->GetSafeHdc(),
posx,posy,
imgw,
imgh,
0,0,
0,
imgh,
lpData,
lpbi,
DIB_RGB_COLORS);
3、淡出效果主要是修改lpbi结构的变量来实现
lpbi->bmiColors[i].rgbBlue
lpbi->bmiColors[i].rgbRed
lpbi->bmiColors[i].rgbGreen
4、循环中加入消息翻译传送,不至于运行期间鼠标变成等待的沙漏
if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}


说明:这些是本人在学习VC中的一些心得,如果有不对的地方或要补充的地方请来电子邮件:
nenlong@163.net

posted @ 2007-03-14 17:10 1CM 阅读(106) | 评论 (0)编辑 收藏

Ctrl+Alt+Del时,把进程不出现列表框中

使用 RegisterServiceProcess 注册为 Service 就不会在Ctrl+Alt+Del中出现
需要调用 Kernel32.dll,代码如下

...
HINSTANCE hDllInst = LoadLibrary("KERNEL32.DLL");
if(hDllInst)
{
typedef DWORD (WINAPI *NEWAPI)(DWORD,DWORD);         
NEWAPI RSP = NULL;
RSP = (NEWAPI)GetProcAddress(hDllInst,"RegisterServiceProcess"); 
        if(RSP)    
{            
RSP(0,1);
}   
FreeLibrary(hDllInst);
}
...

说明:这些是本人在学习VC中的一些心得,如果有不对的地方或要补充的地方请来电子邮件:
nenlong@163.net

posted @ 2007-03-14 17:08 1CM 阅读(124) | 评论 (0)编辑 收藏

判断鼠标是否不在该窗口之中

使用的函数:WindowFromPoint()SetCapture()ReleaseCapture()

说明:在自定义的类中想知道鼠标是否在窗口之中比较容易,
可相反判断鼠标是否不在窗口之中是比较头疼的问题。
为了解决这个问题的关键是怎样设置鼠标捕获窗口是关键。
以下是简单的例子,还可以添加更有效的判断,把他变成
更为灵活。

void Cxxx::OnMouseMove(UINT nFlags, CPoint point)
{
CButton::OnMouseMove(nFlags, point);
m_bOver=true;
SetCapture();
//将鼠标捕获设置到指定的窗口。在鼠标按钮按下的时候,
//这个窗口会为当前应用程序或整个系统接收所有鼠标输入
POINT p2 = point;
ClientToScreen(&p2);
CWnd* wfp = WindowFromPoint(p2);//从鼠标位置获取窗口句柄
if (wfp && wfp->m_hWnd != this->m_hWnd)
{
m_bOver= FALSE;
ReleaseCapture();//为当前的应用程序释放鼠标捕获
}
Invalidate();
}

说明:这些是本人在学习VC中的一些心得,如果有不对的地方或要补充的地方请来电子邮件:
nenlong@163.net

posted @ 2007-03-14 17:08 1CM 阅读(1195) | 评论 (0)编辑 收藏

Win2K 关闭电源

关于自动关机 
在Win9X 中直接使用ExitWindowsEx函数可以直接关机,
而在Win2K以上系统中就不是这样拉。
关键词:TOKEN_PRIVILEGES AdjustTokenPrivileges 

void CAutoStopDlg::Shutdown()
{
	if(IsNT())
	{
	HANDLE hToken;              // handle to process token 
	TOKEN_PRIVILEGES tkp;       // pointer to token structure 
	OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken); 
	//TOKEN_ADJUST_PRIVILEGES 改变权限
	//TOKEN_QUERY 允许这个进程访问所有进程
	LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid);
	tkp.PrivilegeCount = 1;  // one privilege to set    
	tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; 
	AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES) NULL, 0); 
	//改变特权为有效	
	}

	ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE|EWX_POWEROFF,0);
}

posted @ 2007-03-14 17:07 1CM 阅读(104) | 评论 (0)编辑 收藏

查找所有进程的编程例子

提示:关键是利用kernel32.dll中的
CreateToolhelp32Snapshot,Process32First,Process32Next函数。
并且要熟悉相关的结构体变量,比如PROCESSENTRY32等。
编程的方法类似与TC(DOS)中的findfirst,findnext。

1、首先查找所需函数的入口地址。
HMODULE hmk;
hmk=GetModuleHandle("kernel32.dll");

typedef DWORD (WINAPI *NEWAPI)(DWORD,DWORD);
NEWAPI CT32S=NULL;//CreateToolhelp32Snapshot
CT32S=(NEWAPI)GetProcAddress(hmk,"CreateToolhelp32Snapshot");

NEWAPI P32F;//Process32First
P32F=(NEWAPI)GetProcAddress(hmk,"Process32First");


NEWAPI P32N;//Process32Next
P32N=(NEWAPI)GetProcAddress(hmk,"Process32Next");

2、得到所有进程印象的句柄。
HANDLE hps=NULL;
hps=(HANDLE)CT32S(TH32CS_SNAPPROCESS,NULL);
3、定义进程结构体变量,在使用Process32First和Process32Next中需要它的指针。
PROCESSENTRY32 pe32;
pe32.dwSize=sizeof(PROCESSENTRY32);

4、开始查找进程。
BOOL b;
//查找第一个进程;
b=P32F((DWORD)hps,(DWORD)&pe32);
DWORD count=0;
CString str;
if(b)
{

PutLB(&pe32);//输出结果到列表
m_PID[count]=pe32.th32ProcessID;//记住进程的ID,以后Kill时使用;
//这样不必在转换
count++;
//如果查到循环进行继续查找直到查不到下一个进程
while(1)
{
b=P32N((DWORD)hps,(DWORD)&pe32);
m_PID[count]=pe32.th32ProcessID;
if(!b)
break;
PutLB(&pe32);
count++;
}
}
5、显示进程的个数。
CString s;
s.Format("Find All Process Ver1.0 Total %d",count);
this->SetWindowText(s);
CloseHandle(hmk);

posted @ 2007-03-14 17:06 1CM 阅读(449) | 评论 (0)编辑 收藏

UDP穿透Socks5代理

    SOCKS5 代理协议是他人定的,要编写程序首先必须了解其协议规则。所以先必须仔细地阅读rfc1928。这样对能够编写socket程序员来讲是易如反掌。本文是专门面对SOCKS5 UDP(无验证方式)

/*
Test Socks5 UDP proxy
Write by nenlong
http://newnan.8u8.com
mail:nnelong@tom.com
At Yanji 2004.2.26
send 5 0
recv 5 0

send 5 3 0 1 IP(4) Port(2)
recv 5 0 0 1 IP(4) Port(2)

data 0 0 0 1 IP(4) Port(2) DATA

UDP ASSOCIATE
The UDP ASSOCIATE request is used to establish an association within
the UDP relay process to handle UDP datagrams. The DST.ADDR and
DST.PORT fields contain the address and port that the client expects
to use to send UDP datagrams on for the association. The server MAY
use this information to limit access to the association. If the
client is not in possesion of the information at the time of the UDP
ASSOCIATE, the client MUST use a port number and address of all zeros.

If the reply code (REP value of X'00') indicates a success, and the
request was either a BIND or a CONNECT, the client may now start
passing data.

*/
#include "StdAfx.h"
#include "winsock2.h"
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
void closesocks(SOCKET s);
int senddata(char *data,int isize,sockaddr_in sa);//UDP
#pragma comment (lib,"ws2_32.lib")
char szMyIP[20];
char szProxyIP[20];
char szMsg[50];
int isc;
void main(void)
{
// 开始使用ws2_32.dll
sprintf(szProxyIP,"192.168.0.1");

WSADATA wsaData;
int iRetVal,i;
iRetVal = WSAStartup ( MAKEWORD ( 1,1 ), &wsaData );
if ( 0 != iRetVal)
{
printf("WSAStartup %d", iRetVal );
return;
}
printf("WSAStartup [OK]\n");


//取得主机名称
char szhostname[128];
if(SOCKET_ERROR ==gethostname(szhostname,128))
{
printf("gethostname %X\n",WSAGetLastError());
return;
}
printf("hostname %s[OK]\n",szhostname);

struct hostent FAR * lps;
lps=gethostbyname(szhostname);
if(lps==NULL)
{
printf("gethostbyname error\n");
}
else
{
IN_ADDR ia;
memcpy(&ia,lps->h_addr_list[0],4);
sprintf(szMyIP,"%s",inet_ntoa (ia));
printf(" addr:%s\n",szMyIP);
}

//建立socket
//AF_INET ---->to AF_INET for IPv4 addressing
//SOCK_STREAM --->TCP
SOCKET s;
s=socket(AF_INET,SOCK_STREAM,0);
if(s==INVALID_SOCKET)
{
printf("socket %X\r",WSAGetLastError());
closesocket(s);
return;
}
printf("socket TCP [OK]\n");
sockaddr_in sa;
sa.sin_family=AF_INET;
sa.sin_port=htons(1080); //Port
sa.sin_addr.s_addr= inet_addr(szProxyIP); //IP

//建立连接 到代理服务器
iRetVal=connect (s,(SOCKADDR*)&sa,sizeof(sockaddr_in));
if(iRetVal==SOCKET_ERROR)
{
printf ("connect %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("connect %s %d[OK]\n",szProxyIP,1080);
//请求无验证
char buff[255];
buff[0]=5;buff[1]=0;
iRetVal=send(s,buff,2,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("send 50 %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Send 5 0 [OK]\n");
memset(buff,0,4);
printf("Recv ");
iRetVal=recv(s,buff,4,0);
printf("%02X %02X %02X %02X [OK]\n",buff[0],buff[1],buff[2],buff[3]);

//返回 5 0 请求成功
if(buff[0]!=5 || buff[1]!=0)
{
printf ("not proxy service\n");
closesocket(s);
return;
}

printf("find proxy server[OK]\n");

//报文10字节

buff[0]=5; //Ver
buff[1]=3; //UDP
buff[2]=0;
buff[3]=1; //IP V4 address
buff[4]=(unsigned char)0;
buff[5]=(unsigned char)0;
buff[6]=(unsigned char)0;
buff[7]=(unsigned char)0;
buff[8]=(unsigned char)0;
buff[9]=(unsigned char)0;


//发送报文
iRetVal=send(s,buff,10,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("send 530100001388 %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Send 05 03 00 01 00 00 00 00 00 00 [OK]\n");
memset(buff,0,10);
iRetVal=recv(s,buff,10,0);
if(iRetVal==SOCKET_ERROR)
{
printf ("recv %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Recv ");
for(i=0;i<10;i++)
printf ("%02X ",(unsigned char)buff[i]);
printf("[OK]\n");
if(buff[0]!=5 || buff[1]!=0)
{
printf ("not UDP proxy service\n");
closesocket(s);
return;
}

char szIP[20];
sprintf(szIP,"%d.%d.%d.%d",
(unsigned char)buff[4],
(unsigned char)buff[5],
(unsigned char)buff[6],
(unsigned char)buff[7]);
int port;
port=(buff[8]<<8)+buff[9];
Sleep(500);
printf("UDP Proxy Add:%s Port:%d\nPress any key Send ...\n",szIP,port);
getch();
isc=0;
int ikey;
while((ikey=getch())!=0x1b)
{
//send data
sockaddr_in sato;
sato.sin_family=AF_INET;
sato.sin_port=htons(port);
sato.sin_addr.s_addr= inet_addr(szIP);

buff[0]=0; //RSV
buff[1]=0; //RSV
buff[2]=0; //FRAG
buff[3]=1; //IPV4
buff[4]=(unsigned char)192;
buff[5]=(unsigned char)168;
buff[6]=(unsigned char)0;
buff[7]=(unsigned char)1;
buff[8]=(unsigned char)0x13;
buff[9]=(unsigned char)0x88;//5000

isc++;
if(isc>50)isc=0;
if(ikey==17) //ctrl+Q
sprintf(szMsg,"Q");
else
sprintf(szMsg,"Hello SOCKS5 (UDP) %d ",isc);

for(i=0;i<(int)strlen(szMsg);i++)
{
buff[10+i]=szMsg[i];
}
buff[10+i]=0;

senddata(buff,10+strlen(szMsg)+1,sato);

if(iRetVal==SOCKET_ERROR)
{
printf ("send data %X\n",WSAGetLastError());
closesocket(s);
return;
}
printf("Press ESC key to exit Ctrl+Q Close RECV5000 Windows\n");
}
closesocket(s);
return;
}

void closesocks(SOCKET s)
{
closesocket(s);
WSACleanup();
}

int senddata(char *data,int isize,sockaddr_in sa)
{
int ret,i;
SOCKET s;
s=socket(AF_INET,SOCK_DGRAM,0);
ret=connect(s,(SOCKADDR*)&sa,sizeof(sockaddr_in));
if(ret==SOCKET_ERROR)
{
printf("UDP connect %X\n",ret);
closesocket(s);
return ret;
}
printf("UDP Send IP:%s Port:%d\nSend ",inet_ntoa (sa.sin_addr),ntohs (sa.sin_port));
for(i=0;i<isize;i++)
printf("%02X ",(unsigned char)data[i]);
printf("\n\n");
ret=send(s,data,isize,0);
closesocket(s);
return ret;
}


  以上即关于UDP穿透Socks5代理(无验证)的一点心得,希望能够得到大家的指正。

posted @ 2007-03-13 10:32 1CM 阅读(2965) | 评论 (0)编辑 收藏

仅列出标题
共8页: 1 2 3 4 5 6 7 8