求解!HKEY_CLASSES_ROOT根键下PropertySheetHandlers各项的意义!

求解!HKEY_CLASSES_ROOT根键下PropertySheetHandlers各项的意义!,第1张

扩展名与应用程序的对应关系

Windows所支持的文件类型(这些文件具有一定的文件扩展名)在HKEY_CLASSES_ROOT根键下定义。下表中列出了HKEY_CLASSES_ROOT根键中的文件扩展名和文件类型之间的关系。

文件扩展名和文件类型间的关系

文件扩展名 文件类型 文件扩展名 文件类型

386 vxd文件(这是一个虚拟设备驱动程序) ADM ADM_auto_文件

ai application/postscript文件 aif aiff文件

aifc aiff文件 aiff aiff文件

ani ani文件(光标动画文件) art art文件

au au文件(用于Internet传输的声音文件) awd FaxView文档(用于传真的显示)

snd au文件 avi avi文件(由Video forWindows支持)

bat bat文件(DOS、Windows下的批处理文件) bfc Briefcase(这是一种公文包文件)

bmp Paintpicture(这是一个由画图附件所产生的文件) cda cda文件

cnf Conferencelink(这是一个会议连接) crt certificate

文件(这是一

个用于安全方

面的证书认证

文件)

der certificate文件 clp Clipboard文件(用于保存剪贴板中的内容)

cmd cmd文件(这是一个文本文件,主要用于命令解释) com com文件(这是DOS、Windows上一个命令解释程序,如commandcom、winco等)

cpl cpl文件 css text/css文件

cur cur文件(用于存放光标资源) dat DAT_auto_文件

dcx DCXImageDocument(这是一个DCXImage产生的文档) DIC Txt文件

dll dll文件(这是一个Windows上使用的动态链接库文件) shb DocShortCut(这是DOC文件的快捷方式)

drv drv文件(Windows上的设备驱动程序) xla EXCELAddin

xlk ExcelBackup xlc ExcelChart5

csv ExcelCSV xld ExcelDialog

dif ExcelDIF xlb ExcelSheet5

xls ExcelSheet5 slk ExcelSLK

xlt ExcelTemplate xlv ExcelVBAModule

xlw ExcelWorkspace xll ExcelXLL

xlm ExcelMacroSheet xif XIFImageDocument(这是一个XIFImage

产生的文档)

exe exe文件(这是DOS、Windows下可执行文件) fnd fnd文件

fon fon文件(这是Windows的TTF字库的索引文件) gif gif文件

goc gocserve hlp help文件(Windows下帮助文件)

ht ht文件 htm html文件(这是超文本标记语言文件)

html html文件 ico ico文件(这是Windows的图标文件)

inf inf文件(这是一个信息安装文件) ini ini文件(Windows的初始化文件)

url InternetShortcut(这是Internet上URL地址的快捷方式) job JobObject

jfif jpeg文件 jpe jpeg文件

jpg jpeg文件 lnk lnk文件(这是Windows上的快捷方式)

mid mid文件 mmm MPlayer

mlv MPEG文件(这是一

个视频文件) mak mak文件

man application/x-trof-man格式的文件 MAPI

Mail CLSID\{9E56BE60-C50F-11CF-9A2C-00A0C90A90CE}(这是一个类标识)

mcc Dialer10CallingCard(这是一个电话卡文件) mov mov文件(这是一个由QuickTime for

Windows支持的视频文件)

mov

ie video/x-sgi-movie格式文件 mp2 MPEG文件

mpa MPEG文件 mpe MPEG文件

mpeg MPEG文件 mpg MPEG文件

msn MSNetworkDocument(这

是一个MSN软件产生的文件) rmi mid文件

gra MSGraphChart5 grp MSProgramGroup(这是一个由程序管理器产生的组窗口文件)

obd OfficeBinder95 obt OfficeBinderTemplate

obz OfficeBinderWizard ofn OfficeFileNew(这是一个由Office新

创建的文件

PBK MSN_PhoneBook pcx PCXImageDocument

nws MicrosoftInternet News

Message pif pif文件

pma Perf文件 ps application/postscript格式文件

pmc Perf文件 pml Perf文件

pmr Perf文件 pmw Perf文件

pfm pfm文件 pnf pnf文件

que QueueObject qt MOV文件

ra ReadAudio文件 ram ReadAudio文件

reg reg文件(注册表文件) rnk rnk文件

rpm audio/x-pn-realaudio-

plugin格式文件 rtf WordRTF

scr scr文件 shs ShellScrap

sit application/x-stuffit格式文件 sys sys文件

tif TIFImageDocument tiff TIFImageDocument

ttf ttf文件 ttc ttc文件

EXC txt文件 log txt文件

scp txt文件(脚本文件) txt txt文件

pic ViewerFrameClass vir vir文件

vsd VisioDrawing4 vss VisioDrawing4

vst VisioDrawing4 vsw VisioDrawing4

wav wav文件 ARC Winzip

ARJ Winzip gz Winzip

LZH Winzip tar Winzip

taz Winzip tgz Winzip

z Winzip zip Winzip

wll WordAddin wbk WordBackup

DOT WordTemplate wiz WordWizard

doc WordDocument wri wri文件

xbm xbm文件(image/x-xbitmap格式文件) xif XIFImage

Document

uls uls文件( text/iuls格式文件) WHT Whiteboard

WPS wps文件

特殊扩展名与应用程序的对应关系

我们在注册表编辑器中可以发现,HKEY_CLASSES_ROOT根键下的文件扩展名子键(如、bas等)前面有“+”符号,而且在此文件扩展名中没有对应的应用程序。为了查明这些文件后缀与应用程序之间的关系,我们必须单击“+”一次或者几次,才可以看到它们的关系。

下面简要地介绍这些特殊的文件后缀子键。

子键

子键下面具有如下层次结构:

HKEY_CLASSES_ROOT\

HKEY_CLASSES_ROOT\\shellex

HKEY_CLASSES_ROOT\\shellex\PropertySheetHandlers

HKEY_CLASSES_ROOT\\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}

此层次结构说明了子键的文件类型与 Windows系统中的外壳扩展中的属性页句柄建立了一种关联。

bas子键

bas子键下面具有如下层次结构:

HKEY_CLASSES_ROOT\bas

HKEY_CLASSES_ROOT\bas\shell

HKEY_CLASSES_ROOT\bas\shell \open

HKEY_CLASSES_ROOT\bas\shell \open \command

此层次结构说明了bas子键与command子键所指定的应用程序建立了关联。在command子键中还有如下设置:

#@=E:\VB\vbexe %1

也就是说,bas文件后缀与E:\VB\vbexe关联。

bmp子键

bmp子键下面具有如下层次结构:

HKEY_CLASSES_ROOT\bmp

HKEY_CLASSES_ROOT\bmp \ShellNew

在ShellNew子键下面只有一个设置:

#NullFile=:将NullFile设置为空串,以便能将bmp文件扩展名添加到系统的新建菜单中。

1创建分区表,INCLUSIVE(包含),exclusive(不包含)

CREATE TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" ( "REPORT_DATE" DATE, "MA_ACCT_NO" VARCHAR(100), "TRANS_DATE" DATE, "ORG_UNIT_ID" VARCHAR(15), "ORG_PROD_ID" VARCHAR(15), "CURR_CD" VARCHAR(15), "ACCT_NO" VARCHAR(15), "TRANS_NUM" VARCHAR(15), "TRANS_NO" VARCHAR(15), "TRANS_DIF" VARCHAR(15), "DEPOSIT_CHAR" VARCHAR(15), "DEPOSIT_BAL" DECIMAL(18,2), "TRANS_AMT" DECIMAL(18,2), "TRANS_TYPE" CHARACTER(1), "FLG" CHARACTER(1), "RATE" DECIMAL(18,6), "TRXMEM" DECIMAL(4,0)) IN "MA_DATA" INDEX IN "MA_INDEX" PARTITION BY RANGE ( "REPORT_DATE" NULLS LAST ) ( PARTITION PART0 STARTING '2010-12-10' INCLUSIVE ENDING '2010-12-20' INCLUSIVE ) ;

ALTER TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" DATA CAPTURE NONE LOCKSIZE ROW APPEND OFF NOT VOLATILE;

COMMENT ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" IS '活期交易明细表';

COMMENT ON "MABAS""BAS_MID_TRANS_LIST_CK_BAK" ( "REPORT_DATE" IS '数据日期', "MA_ACCT_NO" IS '管会账号', "TRANS_DATE" IS '营业日期', "ORG_UNIT_ID" IS '行所号', "ORG_PROD_ID" IS '业务品种 ', "CURR_CD" IS '币别', "ACCT_NO" IS '帐号', "TRANS_NUM" IS '交易序号', "TRANS_NO" IS '交易代号', "TRANS_DIF" IS '交易区别', "DEPOSIT_CHAR" IS '存款性质 ', "DEPOSIT_BAL" IS '存款余额', "TRANS_AMT" IS '交易金额', "TRANS_TYPE" IS '交易别', "FLG" IS '连动标志', "RATE" IS '汇率' );

GRANT CONTROL ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2";

GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2" WITH GRANT OPTION;

GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "DB2INST2" WITH GRANT OPTION;

GRANT SELECT, INSERT, UPDATE, ALTER, DELETE, INDEX, REFERENCES ON TABLE "MABAS""BAS_MID_TRANS_LIST_CK_BAK" TO USER "MAPUB" WITH GRANT OPTION;

2增加分区,注意这里的INCLUSIVE,exclusive,这时只有2011-01-31的数据可以进行insert

alter table MABASBAS_MID_TRANS_LIST_CK_BAK add partition LIST_CK_bak0131 STARTING '2011-01-31' INCLUSIVE ENDING '2011-02-01' exclusive

3insert 数据

insert into MABASBAS_MID_TRANS_LIST_CK_BAK select from MABASBAS_MID_TRANS_LIST_CK where report_date=date('2011-01-31');

4转移分区到临里表

alter table MABASBAS_MID_TRANS_LIST_CK_BAK detach partition LIST_CK_bak0131 into MABASBAS_MID_TRANS_LIST_CK_BAK1

5删除生成的分区迁移表,注意这时分区表的分区(LIST_CK_bak0131)己经不存在了,如果要insert必须新增该分区

drop table MABASBAS_MID_TRANS_LIST_CK_BAK1

以下为应用写的shell脚本,并参照syscatdatapartitions 进行判断,如果有则删除分区,否则进行新建,以下为具体的脚本。

/home/odSUSEr1/profile#配置文件SYSNAME=GDBMAMADS_HOME=/home/odsuser1/gdbma/etl#DS ConfigDSConfigFile=$MADS_HOME/dsconfig_gdbma#MARPT ETL2数据库#DB信息DBNAME=`awk 'FS="=" {if ($0~/^MABASDBName/) print $2}' $DSConfigFile`DBUSR=`awk 'FS="=" {if ($0~/^MABASDBUser/) print $2}' $DSConfigFile`DBPWD=`awk 'FS="=" {if ($0~/^MABASDBPassword/) print $2}' $DSConfigFile`DBSCHEMA=`awk 'FS="=" {if ($0~/^MABASDBSchema/) print $2}' $DSConfigFile`DBPWD=`$MADS_HOME/Encrypt/discryptsh $DBPWD`dbname=$DBNAMEuser=$DBUSRpasswd=$DBPWD#连接数据库db2 connect to $DBNAME user $DBUSR using $DBPWD >/dev/nulldb2 set schema=$DBSCHEMA;#传递参数JOB_NAME=$1DELETE_DATE=$2#DELETE_DBSCHEMA=$1#DELETE_TAB=$2#DELETE_COL=$3#DELETE_TYPE=$4#DELETE_DATE=$5#DELETE_VALUE=$6

delete_tab="select SCH_NAME,TAB_NAME,IF_PARTITION,TAB_DATE,DEL_VALUE from mabass_job_info_m t where JOB_NAME = '"$JOB_NAME"' "DEL_DATA=`db2 -t "$delete_tab"`if [ $ -ne 0 ]thenecho "$SDATA"fiecho "$DEL_DATA" | sed -e '4,/^$/!d;/^$/d'|#循环读取job,然后调度while read SCH_NAME TAB_NAME IF_PARTITION TAB_DATE DEL_VALUEdo#判断删除方式#分区字段拼写if [ "$IF_PARTITION" = 'Y' ] then #分区进行拼写 partiton_name=`db2 -tx "select upper('p'||replace(varchar(date('"$DELETE_DATE"')),'-','')) from sysibmsysdummy1 "` tmp_tab=`db2 -tx "select upper('tmp'||substr(replace(replace(varchar(current timestamp),'-',''),'',''),5,10)) from sysibmsysdummy1 "` #判断分区是否存在 vi_result=`db2 -tx "select count() from syscatdatapartitions t where tabschema = upper('"$SCH_NAME"') and tabname = upper('"$TAB_NAME"') and datapartitionname=upper('"$partiton_name"') "` #对分区进行操作 if [ "$DEL_VALUE" = '-' ] then #判断分区是否存在 if [ $vi_result -ne 0 ] then #进行分区数据到临时表 alter_parition=`db2 -tx "alter table $SCH_NAME$TAB_NAME detach partition $partiton_name into $SCH_NAME$tmp_tab"` #删除临时表 drop_tmp=`db2 -tx "drop table $SCH_NAME$tmp_tab"` #分区结束 partition_end=`db2 -tx "select varchar(date('"$DELETE_DATE"') +1 days) from sysibmsysdummy1"` #增加分区 add_partition=`db2 -tx "alter table $SCH_NAME$TAB_NAME add partition $partiton_name STARTING '"$DELETE_DATE"' INCLUSIVE ENDING '"$partition_end"' exclusive "` else #分区结束 partition_end=`db2 -tx "select varchar(date('"$DELETE_DATE"') +1 days) from sysibmsysdummy1"` #增加分区 add_partition=`db2 -tx "alter table $SCH_NAME$TAB_NAME add partition $partiton_name STARTING '"$DELETE_DATE"' INCLUSIVE ENDING '"$partition_end"' exclusive "` fi else if [ $vi_result -ne 0 ] then #进行分区数据到临时表 drop_parition=`db2 -tx "alter table $SCH_NAME$TAB_NAME detach partition $partiton_name into $SCH_NAME$tmp_tab "`

欢迎分享,转载请注明来源:浪漫分享网

原文地址:https://hunlipic.com/qinggan/10983403.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-11-19
下一篇2023-11-19

发表评论

登录后才能评论

评论列表(0条)

    保存