Delphi ListView排序

var
m_bSort:Boolean; //控制正反排序的变量

implementation

{$R *.dfm}
//ListView排序的回调函数,默认的是快速排序法,也可以自己在这里做算法
function CustomSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
var txt1,txt2:string;
begin
if ParamSort <> 0 then
begin
try
txt1:=Item1.SubItems.Strings[ParamSort-1];
txt2:=Item2.SubItems.Strings[ParamSort-1];
if m_bSort then begin
Result:=CompareText(txt1,txt2);
end else begin
Result:=-CompareText(txt1,txt2);
end;
except
end;

  end
  else
  begin
          if   m_bSort   then
          begin
                Result:=CompareText(Item1.Caption,Item2.Caption);
          end
          else
          begin
                Result:=-CompareText(Item1.Caption,Item2.Caption);
          end;
  end;

end;

procedure TFrm_CommunityModify.lv_SelectedHDTCColumnClick(Sender: TObject;
Column: TListColumn);
begin
lv_SelectedHDTC.CustomSort(@CustomSortProc,Column.Index);
m_bSort:=not m_bSort;
end;

Posted in 软件开发 at November 14, 2017. by 傻猫 .    Views: 224    No Comments

【解决】由于没有远程桌面授权服务器可以提供许可证,远程回话被中断

由于windows server 2008 R2 安装了 远程桌面角色,但是这个角色是120天免费的,需要购买授权的【可恶的微软,多用户登录,都要收钱。对于unix来说,多用户是很普通的系统功能】

解决方法是取消这个角色,就可以恢复正常的远程了。

现在无法远程,提示这个错误,怎么才能登陆,取消角色呢?

mstsc /v:IP /admin

这样就可以登陆了。然后再把远程桌面 角色删除,重启计算机,OK done!

资料:百度

http://hi.baidu.com/yuanyang203/item/269f0b5ff95bba4c4eff20c4

Posted in 软件开发 at October 3, 2017. by 傻猫 .    Views: 896    No Comments

CentOS环境开放3306端口

添加规则,打开3306端口
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

查看规则是否生效
iptables -L -n //或者 service iptables status

在mysql控制台下修改权限
grant all privileges on . to 'root'@'%' identified by '123456' with grant option;

flush privileges; //重载系统权限

exit;//退出mysql控制台

Posted in 数据库 at September 13, 2017. by 傻猫 .    Views: 1011    No Comments

CentOS 7.0下使用yum安装MySQL

CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的。为了解决这个问题,我们要先下载mysql的repo源。

1.下载mysql的repo源

$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.安装mysql-community-release-el7-5.noarch.rpm包

$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

3.安装mysql

$ sudo yum install mysql-server

根据提示安装就可以了,不过安装完成后没有密码,需要重置密码

4.重置mysql密码

$ mysql -u root

登录时有可能报这样的错:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

$ sudo chown -R root:root /var/lib/mysql

重启mysql服务

$ service mysqld restart

接下来登录重置密码:

$ mysql -u root //直接回车进入mysql控制台
mysql > use mysql;
mysql > update user set password=password('123456') where user='root';
mysql > exit;

Posted in 数据库 at September 12, 2017. by 傻猫 .    Views: 973    No Comments

ITIL信息技术基础架构库介绍

ITIL即IT基础架构库(Information Technology Infrastructure Library, ITIL,信息技术基础架构库)由英国政府部门CCTA(Central Computing and Telecommunications Agency)在20世纪80年代末制订,现由英国商务部OGC(Office of Government Commerce)负责管理,主要适用于IT服务管理(ITSM)。ITIL为企业的IT服务管理实践提供了一个客观、严谨、可量化的标准和规范。

使用功能

在它的最新版2.0版中,ITIL主要包括六个模块,即业务管理、服务管理、ICT基础架构管理、IT服务管理规划与实施、应用管理和安全管理。其中服务管理是其最核心的模块,该模块包括"服务提供"和"服务支持"两个流程组.

ITIL为企业的IT服务管理实践提供了一个客观、严谨、可量化的标准和规范,企业的IT部门和最终用户可以根据自己的能力和需求定义自己所要求的不同服务水平,参考ITIL来规划和制定其IT基础架构及服务管理,从而确保IT服务管理能为企业的业务运作提供更好的支持。对企业来说,实施ITIL的最大意义在于把IT与业务紧密地结合起来了,从而让企业的IT投资回报最大化。

实际上,ITIL并不仅仅适用于企业内部的IT服务管理,也适合于IDC数据托管中心。过去,IDC为每个用户提供的IT服务水平很难量化、考评,用户无法断定是否获得了合同承诺的服务,而ITIL的实施为IDC的IT服务水平提供了一个可以客观考评的依据和标准。

ITIL已经在全球IT服务管理领域得到了广泛的认同和支持,四家最领先的IT管理解决方案提供商都宣布了相应的策略:IBM Tivoli推出了"业务影响管理"解决方案、HP公司倡导"IT服务管理"、CA公司强调"管理按需计算环境"、BMC公司则推出了"业务服务管理"理念。实际上,无论各公司的理念和解决方案有多大差异,但目标都是一致的:把IT与业务相结合,以业务为核心搭建和管理IT系统。

查看更多内容...

Posted in 管理知识 at August 30, 2017. by 傻猫 .    Views: 1276    No Comments

ITSM(IT服务管理)

IT服务管理(ITService Management ITSM)是一套帮助企业对IT系统的规划、研发、实施和运营进行有效管理的方法,是一套方法论。ITSM起源于ITIL(IT Infrastructure Library,IT基础架构标准库),ITIL是CCTA(英国国家电脑局)于1980年开发的一套IT服务管理标准库。它把英国在IT管理方面的方法归纳起来,变成规范,为企业的IT部门提供一套从计划、研发、实施到运维的标准方法。

简介

专家的研究和大量企业实践表明,在IT项目的生命周期中,大约80%的时间与IT项目运营维护有关,而该阶段的投资仅占整个IT投资的20%,形成了典型的“技术高消费”、“轻服务、重技术”现象。Gartner Group的调查发现,在经常出现的问题中,源自技术或产品(包括硬件、软件、网络、电力失常及天灾等)方面的其实只占了20%,而流程失误方面的占40%,人员疏失方面的占40%。流程失误包括变更管理没有做好、超载、没有测试等程序上的错误或不完整,人员疏失包括忘了做某些事情、训练不足、备份错误或安全疏忽等。
这就说明,IT运营方面的问题,更多的不是来自技术,而是来自管理方面。那么,如何进行IT运营管理呢?
世界上许多企业和政府部门进行了长期的探索和实践。以这些企业的经验和成果为基础,逐渐形成了一种新的IT运营管理方法论,那就是ITSM(IT Service Management,IT服务管理)。
这套标准已经被欧洲、美洲和澳洲的很多企业采用,在欧洲40-60%的IT经理都知道ITSM,在美国有20-30%的IT经理了解ITSM,而在国内了解ITSM的人还很少。ITSMf的CEO Aidan Lawes认为,“对一个企业来说,不管其IT架构多大,都需要ITSM,目前把业务与IT能够很好集成的客户还不多,很多人首先想到的是业务,然后才是IT,而不是用IT去驱动业务。” Aidan Lawes认为有必要要从教育入手普及ITSM,让人们从学生时代就意识到ITSM的重要性。 基于不同的出发点和侧重点,人们提出了各种各样的有关IT服务管理的定义。
国际IT领域的权威研究机构加特纳(Gartner)认为,ITSM是一套通过服务级别协议(SLA)来保证IT服务质量的协同流程,它融合了系统管理、网络管理、系统开发管理等管理活动和变更管理、资产管理、问题管理等许多流程的理论和实践。
而ITSM领域的国际权威组织itSMF(国际IT服务管理论坛)则认为ITSM是一种以流程为导向、以客户为中心的方法,它通过整合IT服务与组织业务,提高组织IT服务提供和服务支持的能力及其水平。

查看更多内容...

Posted in 管理知识 at August 30, 2017. by 傻猫 .    Views: 1148    No Comments

Delphi中获取Unix时间戳及注意事项

uses DateUtils;
DateTimeToUnix(Now)

可以转换到unix时间,但是注意的是,它得到的时间比C语言中time()得到的时间大了86060,这是因为Now是当前时区的时间,c语言中time()是按格林威治时间计算的,北京时间比格林威治时间多了8小时,DateTimeToUnix(Now)-86060 就和c语言中time()得到的一样了。

但我进一步研究DateTimeToUnix函数时发现,Delphi中的时间没有经过任何的转换,是直接读取系统时间

我试着改变当前计算机时区,发现Delphi返回值没有任何改变。

而在C++中,改变计算机时区,则time()返回值也随着改变,这就说明C++中标准时间是通过本地时间和当前时区进行计算得来的。

因此,在Delphi开发时,需要注意Delphi获取的时间戳是当前计算机所在时区时间,并非标准UTC时间。

UnixToDateTime()函数并没有对时区进行转换,仅仅是对时间进行了转换。

文章来源:http://blog.csdn.net/missmecn/article/details/5870639

Posted in 软件开发 at August 23, 2017. by 傻猫 .    Views: 1180    No Comments

CnPack 组件包所有源代码

CnPack 2009-09-14 SVN 包,包括以下内容:

  1. CnPack 组件包所有源代码。
  2. CnPack 开发组所有文档和模板,其中帮助文档目前包括多语帮助文档、CnDebugger 接口帮助文档、CnCalendar 历法说明文档、平滑字体组件帮助文档、停靠组件帮助文档等。
  3. 开发组其它工作成果。

以下是 cnpack\Source 目录内容说明:

\Common -公共库目录

CnBase64.pas
Base64 编码解码算法单元

CnCalClass.pas
历法计算类库

查看更多内容...

Posted in 软件开发 at August 23, 2017. by 傻猫 .    Views: 1181    No Comments