ASP网页设计用ASP制造InstallShield安装程序(1)
ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用installshield|程序我如今在做ASP的安装程序,如许能够便利用户的利用。我利用的InstallShield版本是InstallShieldProfessional―StandardEdition6.3。我没有效过这个东东,成绩以下:
成绩一
经由过程ProjectWizard-generatedscript做好了COPY打包事情。但是6.3版本的好象不撑持主体Program...Endprogram,由于我看COPY打包的Script剧本就是经由过程两个Fuction完成的。以是我的剧本加不出来,除非在这两个Fuction中挪用!叨教是否是6.3版本不克不及利用Program...Endprogram,假如可使用的话,应当怎样往用?
成绩二
想在COPY完ASP程序后间接完成IIS的设置,也就是经由过程安装程序就能够完成,不必要手动设置,叨教如何往完成呢?
以下就是我用ProjectWizard-generatedscript做好的两个Fuction,他们不必挪用也不必声明界说就主动实行,真是弄不懂呀!我的Script该加在甚么中央呢?
//Includeheaderfiles
#include"ifx.h"
functionOnFirstUIBefore()
numbernResult,nSetupType;
stringszTitle,szMsg;
stringszLicenseFile,szQuestion;
stringszName,szCompany,szSerial;
stringszTargetPath;
stringszDir;
stringszComponents,szTargetdir;
numbernLevel;
LISTlistStartCopy;
numbernvSize;
begin
nSetupType=TYPICAL;
TARGETDIR="C:"^"inetpub"^"wwwroot"^@PRODUCT_NAME;
szDir=TARGETDIR;
szName="";
szCompany="";
szSerial="";
Dlg_Start:
//beginningofdialogslabel
Dlg_SdWelcome:
szTitle="";
szMsg="";
nResult=SdWelcome(szTitle,szMsg);
if(nResult=BACK)gotoDlg_Start;
Dlg_SdLicense:
szLicenseFile=SUPPORTDIR^"license.txt";
szTitle="";
szMsg="";
szQuestion="";
nResult=SdLicense(szTitle,szMsg,szQuestion,szLicenseFile);
if(nResult=BACK)gotoDlg_SdWelcome;
Dlg_SdReGISterUserEx:
szMsg="";
szTitle="";
nResult=SdRegisterUserEx(szTitle,szMsg,szName,szCompany,szSerial);
if(nResult=BACK)gotoDlg_SdLicense;
Dlg_SdAskDestPath:
szTitle="";
szMsg="pleaseselectsetupfolder";
nResult=SdAskDestPath(szTitle,szMsg,szDir,0);
TARGETDIR=szDir;
if(nResult=BACK)gotoDlg_SdRegisterUserEx;
Dlg_SetupType:
szTitle="";
szMsg="";
nResult=SetupType(szTitle,szMsg,"",nSetupType,0);
if(nResult=BACK)then
gotoDlg_SdAskDestPath;
else
nSetupType=nResult;
if(nSetupType!=CUSTOM)then
szTargetPath=TARGETDIR;
nvSize=0;
ComponentCompareSizeRequired(MEDIA,szTargetPath,nvSize);
if(nvSize!=0)then
MessageBox(szSdStr_NotEnoughSpace,WARNING);
gotoDlg_SetupType;
endif;
endif;
endif;
Dlg_SdComponentTree:
if((nResult=BACK)&&(nSetupType!=CUSTOM))gotoDlg_SetupType;
szTitle="";
szMsg="";
szTargetdir=TARGETDIR;
szComponents="";
nLevel=2;
if(nSetupType=CUSTOM)then
nResult=SdComponentTree(szTitle,szMsg,szTargetdir,szComponents,nLevel);
if(nResult=BACK)gotoDlg_SetupType;
endif;
Dlg_ObjDialogs:
nResult=ShowObjWizardPages(nResult);
if(nResult=BACK)gotoDlg_SdComponentTree;
Dlg_SdStartCopy:
szTitle="";
szMsg="";
listStartCopy=ListCreate(STRINGLIST);
nResult=SdStartCopy(szTitle,szMsg,listStartCopy);
ListDestroy(listStartCopy);
if(nResult=BACK)gotoDlg_ObjDialogs;
//setupdefaultstatus
SetStatusWindow(0,"");
Enable(STATUSEX);
StatusUpdate(ON,100);
return0;
end;
///////////////////////////////////////////////////////////////////////////////
//
//FUNCTION:OnMoving
//
//EVENT:Movingeventissentwhenfiletransferisstartedasaresultof
//ComponentTransferDatacall,beforeanyfiletransferoperations
//areperformed.
//
///////////////////////////////////////////////////////////////////////////////
functionOnMoving()
stringszAppPath;
begin
szAppPath=TARGETDIR;
RegDBSetItem(REGDB_APPPATH,szAppPath);
RegDBSetItem(REGDB_APPPATH_DEFAULT,szAppPath^@PRODUCT_KEY);
end;
//---includescriptfilesection---结论:和PHP一样,ASP简单而易于维护,很适合小型网站应用,通过DCOM和MTS技术,ASP甚至还可以完成小规模的企业应用,但ASP的致命缺点就是不支持跨平台的系统,在大型项目开发和维护上非常困难。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 不能只是将它停留在纸上谈兵的程度上。 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
页:
[1]