`
xqf222
  • 浏览: 126925 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

自己动手开发的第一个即将投入使用中的ASP+DLL

 
阅读更多

ASP文件调用:

location=trim(request("location"))

beginlevel=trim(request("beginlevel"))
endlevel=trim(request("endlevel"))
powertype=trim(request("PowerType"))

Set PWLPrice1=server.createobject("PWLPrice.PowerLevel")
if powertype="FullTime" then
call PWLPrice1.GetPWLFullTimePrice(location, beginlevel, endlevel, currency_code, time2, Price, Price2)
else
call PWLPrice1.GetPWLPartTimePrice(location, beginlevel, endlevel, currency_code, time2, Price, Price2)
end if
set PWLPrice1=nothing
end if

DLL代码

'location 服务器类别
'beginlevel 代练开始级别
'englevel 代练完成级别
'currency_code 货币类型
'time2 代练时间
'ptrPrice1 市场价格
'ptrPrice2 折扣价格

Public Sub GetPWLFullTimePrice(location, beginlevel, endlevel, ByRef currency_code, ByRef time2, ByRef Price, ByRef Price2)
Dim btime As Single
Dim etime As Single

Dim t1 As Single
Dim t2 As Single
Dim t3 As Single
Dim t4 As Single
Dim t5 As Single
Dim t6 As Single
Dim t7 As Single
Dim t8 As Single
Dim t9 As Single
Dim t10 As Single
Dim t11 As Single
Dim t12 As Single
Dim t13 As Single
Dim t14 As Single
Dim t15 As Single
Dim t16 As Single
Dim t17 As Single
Dim t18 As Single
Dim t19 As Single


btime = 1
etime = 2
time1 = 0

t1 = 1
t2 = t1 + 3 * 1
t3 = t2 + 3 * 2
t4 = t3 + 3 * 2.5
t5 = t4 + 3 * 3
t6 = t5 + 3 * 4

t7 = t6 + 3 * 4.5
t8 = t7 + 3 * 5
t9 = t8 + 3 * 5.5
t10 = t9 + 3 * 6.5
t11 = t10 + 3 * 7.5

t12 = t11 + 3 * 8
t13 = t12 + 3 * 8.5
t14 = t13 + 3 * 9
t15 = t14 + 3 * 9.5

t16 = t15 + 3 * 10
t17 = t16 + 3 * 10.5
t18 = t17 + 3 * 11
t19 = t18 + 3 * 12

If beginlevel < 6 Then
btime = 0
Else
Select Case Int((beginlevel - 1) / 3)
Case 2: btime = t1 + (beginlevel - 6) * 1 ' L7-9
Case 3: btime = t2 + (beginlevel - 9) * 2 ' L10-12
Case 4: btime = t3 + (beginlevel - 12) * 2.5 ' L13-15
Case 5: btime = t4 + (beginlevel - 15) * 3 ' L16-18
Case 6: btime = t5 + (beginlevel - 18) * 4 ' L19-21
Case 7: btime = t6 + (beginlevel - 21) * 4.5 ' L22-24
Case 8: btime = t7 + (beginlevel - 24) * 5 ' L25-27
Case 9: btime = t8 + (beginlevel - 27) * 5.5 ' L28-30
Case 10: btime = t9 + (beginlevel - 30) * 6.5 ' L31-33
Case 11: btime = t10 + (beginlevel - 33) * 7.5 ' L34-36
Case 12: btime = t11 + (beginlevel - 36) * 8 ' L37-39
Case 13: btime = t12 + (beginlevel - 39) * 8.5 ' L40-42
Case 14: btime = t13 + (beginlevel - 42) * 9 ' L43-45
Case 15: btime = t14 + (beginlevel - 45) * 9.5 ' L46-48
Case 16: btime = t15 + (beginlevel - 48) * 10 ' L49-51
Case 17: btime = t16 + (beginlevel - 51) * 10.5 ' L52-54
Case 18: btime = t17 + (beginlevel - 54) * 11 ' L55-57
Case 19: btime = t18 + (beginlevel - 57) * 12 ' L58-60

End Select
End If

If endlevel <= 6 Then
etime = 1
Else
Select Case Int((endlevel - 1) / 3)
Case 2: etime = t1 + (endlevel - 6) * 1 'L7-9
Case 3: etime = t2 + (endlevel - 9) * 2 'L10-12
Case 4: etime = t3 + (endlevel - 12) * 2.5 'L13-15
Case 5: etime = t4 + (endlevel - 15) * 3 'L16-18
Case 6: etime = t5 + (endlevel - 18) * 4 'L19-21

Case 7: etime = t6 + (endlevel - 21) * 4.5 'L22-24
Case 8: etime = t7 + (endlevel - 24) * 5 'L25-27
Case 9: etime = t8 + (endlevel - 27) * 5.5 'L28-30
Case 10: etime = t9 + (endlevel - 30) * 6.5 'L31-33
Case 11: etime = t10 + (endlevel - 33) * 7.5 'L34-36
Case 12: etime = t11 + (endlevel - 36) * 8 'L37-39

Case 13: etime = t12 + (endlevel - 39) * 8.5 'L40-42
Case 14: etime = t13 + (endlevel - 42) * 9 'L43-45
Case 15: etime = t14 + (endlevel - 45) * 9.5 'L46-48
Case 16: etime = t15 + (endlevel - 48) * 10 'L49-51
Case 17: etime = t16 + (endlevel - 51) * 10.5 'L52-54
Case 18: etime = t17 + (endlevel - 54) * 11 'L55-57
Case 19: etime = t18 + (endlevel - 57) * 12 'L58-60
End Select
End If

time1 = Round(etime - btime + 0.4999)
time2 = time1
If location = 1 Then
currency_code = "USD"
If time1 < 36 Then
Price2 = Round(time1 * 0.792 * 1.2 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.792 * 1.2 + 0.4999)
Else
Price2 = Round(time1 * 0.792 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.792 + 0.4999)
End If
Else
currency_code = "EUR"
If time1 < 36 Then
Price2 = Round(time1 * 0.792 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.792 + 0.4999)
Else
Price2 = Round(time1 * 0.66 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.66 + 0.4999)
End If
End If


End Sub
'location 服务器类别
'beginlevel 代练开始级别
'englevel 代练完成级别
'currency_code 货币类型
'time2 代练时间
'ptrPrice1 市场价格
'ptrPrice2 折扣价格
Public Sub GetPWLPartTimePrice(location, beginlevel, endlevel, ByRef currency_code, ByRef time2, ByRef Price, ByRef Price2)
Dim btime As Single
Dim etime As Single

Dim t1 As Single
Dim t2 As Single
Dim t3 As Single
Dim t4 As Single
Dim t5 As Single
Dim t6 As Single
Dim t7 As Single
Dim t8 As Single
Dim t9 As Single
Dim t10 As Single
Dim t11 As Single
Dim t12 As Single
Dim t13 As Single
Dim t14 As Single
Dim t15 As Single
Dim t16 As Single
Dim t17 As Single
Dim t18 As Single
Dim t19 As Single


btime = 1
etime = 2
time1 = 0
t1 = 1
t2 = t1 + 3 * 1
t3 = t2 + 3 * 2
t4 = t3 + 3 * 2.5
t5 = t4 + 3 * 3
t6 = t5 + 3 * 4

t7 = t6 + 3 * 4.5
t8 = t7 + 3 * 5
t9 = t8 + 3 * 5.5
t10 = t9 + 3 * 6.5
t11 = t10 + 3 * 7.5

t12 = t11 + 3 * 8
t13 = t12 + 3 * 8.5
t14 = t13 + 3 * 9
t15 = t14 + 3 * 9.5

t16 = t15 + 3 * 10
t17 = t16 + 3 * 10.5
t18 = t17 + 3 * 11
t19 = t18 + 3 * 12

If beginlevel < 6 Then
btime = 0
Else
Select Case Int((beginlevel - 1) / 3)
Case 2: btime = t1 + (beginlevel - 6) * 1 ' L7-9
Case 3: btime = t2 + (beginlevel - 9) * 2 ' L10-12
Case 4: btime = t3 + (beginlevel - 12) * 2.5 ' L13-15
Case 5: btime = t4 + (beginlevel - 15) * 3 ' L16-18
Case 6: btime = t5 + (beginlevel - 18) * 4 ' L19-21
Case 7: btime = t6 + (beginlevel - 21) * 4.5 ' L22-24
Case 8: btime = t7 + (beginlevel - 24) * 5 ' L25-27
Case 9: btime = t8 + (beginlevel - 27) * 5.5 ' L28-30
Case 10: btime = t9 + (beginlevel - 30) * 6.5 ' L31-33
Case 11: btime = t10 + (beginlevel - 33) * 7.5 ' L34-36
Case 12: btime = t11 + (beginlevel - 36) * 8 ' L37-39
Case 13: btime = t12 + (beginlevel - 39) * 8.5 ' L40-42
Case 14: btime = t13 + (beginlevel - 42) * 9 ' L43-45
Case 15: btime = t14 + (beginlevel - 45) * 9.5 ' L46-48
Case 16: btime = t15 + (beginlevel - 48) * 10 ' L49-51
Case 17: btime = t16 + (beginlevel - 51) * 10.5 ' L52-54
Case 18: btime = t17 + (beginlevel - 54) * 11 ' L55-57
Case 19: btime = t18 + (beginlevel - 57) * 12 ' L58-60

End Select
End If

If endlevel <= 6 Then
etime = 1
Else
Select Case Int((endlevel - 1) / 3)
Case 2: etime = t1 + (endlevel - 6) * 1 'L7-9
Case 3: etime = t2 + (endlevel - 9) * 2 'L10-12
Case 4: etime = t3 + (endlevel - 12) * 2.5 'L13-15
Case 5: etime = t4 + (endlevel - 15) * 3 'L16-18
Case 6: etime = t5 + (endlevel - 18) * 4 'L19-21

Case 7: etime = t6 + (endlevel - 21) * 4.5 'L22-24
Case 8: etime = t7 + (endlevel - 24) * 5 'L25-27
Case 9: etime = t8 + (endlevel - 27) * 5.5 'L28-30
Case 10: etime = t9 + (endlevel - 30) * 6.5 'L31-33
Case 11: etime = t10 + (endlevel - 33) * 7.5 'L34-36
Case 12: etime = t11 + (endlevel - 36) * 8 'L37-39

Case 13: etime = t12 + (endlevel - 39) * 8.5 'L40-42
Case 14: etime = t13 + (endlevel - 42) * 9 'L43-45
Case 15: etime = t14 + (endlevel - 45) * 9.5 'L46-48
Case 16: etime = t15 + (endlevel - 48) * 10 'L49-51
Case 17: etime = t16 + (endlevel - 51) * 10.5 'L52-54
Case 18: etime = t17 + (endlevel - 54) * 11 'L55-57
Case 19: etime = t18 + (endlevel - 57) * 12 'L58-60
End Select
End If

time1 = Round(etime - btime + 0.499)
time2 = time1

If location = 1 Then

If time1 < 36 Then
Price2 = Round(time1 * 0.84 * 1.2 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.84 * 1.2 + 0.4999)
Else
Price2 = Round(time1 * 0.84 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.84 + 0.4999)
End If
currency_code = "USD"
Else

If time1 < 36 Then
Price2 = Round(time1 * 0.84 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.84 + 0.4999)
Else
Price2 = Round(time1 * 0.7 * 10 / 8 + 0.49999)
Price = Round(time1 * 0.7 + 0.4999)
End If
currency_code = "EUR"
End If
End Sub

开发过程。编写DLL文件。注册DLL文件,ASP调用DLL对象。

Regsrv32.exe d:/dll/PowerLevel.dll

分享到:
评论

相关推荐

    asp+DLL读取INI文件

    - `InputSection`:VB6提供了`InputSection`函数,它是对`GetPrivateProfileString`的一个封装,方便在VB中使用。 总结,这个示例展示了如何利用VB6创建DLL来封装读取INI文件的逻辑,并通过ASP调用DLL实现动态读取...

    ASP2DLL,ASP转化为DLL工具

    1. 安装ASP2DLL工具,例如AspToDllSetup.exe,这是一个安装程序,用于在用户的计算机上部署该工具。 2. 打开ASP2DLL软件,选择需要转换的ASP文件。 3. 确定输出的DLL文件名和位置。 4. 进行编译,工具会处理ASP代码...

    asp-dll

    - 在ASP页面中使用`Server.CreateObject`方法来创建DLL中定义的对象实例,例如`Set objReference = Server.CreateObject("ProjectName.ClassName")`。 - 通过这个对象实例,就可以调用DLL中定义的方法和属性,实现...

    IIS asp.dll

    当客户端请求一个扩展名为.asp的网页时,IIS会调用asp.dll来处理这个请求。它负责将ASP代码转换为HTTP响应,然后发送回客户端浏览器。这个过程中,asp.dll不仅解析VBScript或JScript等脚本语言,还能够调用服务器端...

    使用vb封装asp为dll源文件及如何调用

    下面将详细讲解如何使用VB来封装ASP为DLL源文件以及如何在ASP中调用这个DLL。 1. 封装ASP为DLL - 创建VB项目:首先,我们需要在Visual Studio中创建一个新的类库项目(Class Library Project)。这是VB项目类型中...

    ASP+SQL Server动态网站开发实例程序源码合集

    源码说明: 包含了72个实例程序介绍如何使用ASP来开发Internet应用程序,这些实例取材于Internet应用开发中最常用的系统或模块,有的代码直接取自实际运行的系统,也就是说每一个使用ASP进行开发的网络应用程序员都...

    AjaxPro源码+dll

    DLL(Dynamic Link Library)是.NET Framework中的一个组件,它包含可由多个程序同时使用的函数和其他资源。开发者可以使用这些源代码,通过Visual Studio或其他.NET编译器进行编译,以便在自己的项目中引用和使用。...

    ASP转DLL,非常方便

    ASP转DLL是一个常见的技术操作,尤其在优化网站性能和提高代码安全性方面有着重要作用。ASP(Active Server Pages)是微软开发的一种服务器端脚本语言,常用于构建动态网页。DLL(Dynamic Link Library)则是Windows...

    ASP+Access开发动态网站实例荟萃

    《ASP+Access开发动态网站实例荟萃》是针对使用ASP(Active Server Pages)与Access数据库进行动态网站开发的一本实践性教程。ASP是一种基于服务器端的脚本语言,常用于创建交互式的网页应用,而Access则是一种易于...

    IIS6.0完整版+DLL

    【IIS6.0完整版+DLL】是一个包含所有必需组件和DLL文件的IIS6.0安装资源,确保用户可以全面地安装和配置Internet Information Services (IIS) 6.0,这是一个由微软开发的Web服务器软件。IIS6.0在Windows Server 2003...

    asp封装DLL风火轮

    1. **准备ASP源代码**:首先,你需要一个或多个ASP文件,这些文件包含了你想要封装到DLL中的业务逻辑和功能。 2. **使用封装工具**:"asp封装DLL风火轮1.4.exe"可能是一个专门用于将ASP文件转换为DLL的工具。这个...

    把ASP编写成DLL教程

    ASP(Active Server Pages)是一种微软开发的服务器端脚本环境,用于创建动态交互式网页。在某些情况下,为了提高代码的重用性、安全性或性能,开发者可能希望将ASP代码封装到DLL(Dynamic Link Library)中。DLL是...

    asp.net 生成DLL文件

    ASP.NET是微软开发的一种用于构建Web应用程序的框架,它基于.NET ...生成的DLL文件可以作为共享组件在多个项目中使用,提高了代码的重用性和组织性。正确地引用和使用DLL,能够使ASP.NET应用程序更强大且易于维护。

    ASP封装DLL的小工具

    1. 准备待封装的ASP代码:首先,你需要有一段或几段ASP代码,这些代码是你希望封装到DLL中的功能模块。 2. 运行工具:找到asp2dll.exe文件,双击运行或者在命令行中指定路径执行。确保你有相应的权限来创建和写入...

    用vb开发dll的asp组件视频

    在ASP中使用VB开发DLL(Dynamic Link Library)组件,可以将常用的功能封装起来,方便在多个页面间复用,提高代码的可维护性和效率。 DLL是一种共享库,它包含了一组可执行的函数和过程,可供多个应用程序同时调用...

    asp.dll提权(珍藏)

    ASP.DLL提权技术是一种在Web环境中通过利用特定的ASP动态链接库文件来获取更高系统权限的方法。在网络安全领域,这种技术通常被恶意攻击者用来植入木马,以获得服务器的控制权,或者用于合法的系统管理员进行系统...

    asp.net各种dll控件

    4. **使用方法**:在ASP.NET项目中使用这些DLL控件,首先需要将DLL文件添加到项目的引用中。这通常在Visual Studio中完成,通过"项目" -&gt; "添加引用" -&gt; "浏览",然后选择DLL文件。接着,在页面设计视图中,可以从...

    ASP封装成DLL

    在创建了这个组件后,可以在 ASP 中使用其名字来引用这个组件,例如: Set ObjReference = Server.CreateObject("ProjectName.ClassName") 其中,ProjectName 和 ClassName 分别是工程名和类名。可以使用 ...

    网页右键菜单等控件RadControls+for+ASPNET+AJAX+Q1+2009+SP1+dll (ASP.NET 2.0 & 3.5)

    【网页右键菜单控件RadControls for ASP.NET AJAX Q1 2009 SP1 dll】是一款专为ASP.NET 2.0和3.5框架设计的高效且功能丰富的UI库,它极大地增强了Web应用程序的用户体验。这个dll文件集成了多种控件,包括但不限于...

    ASP编译成DLL的小例子,内容是文件真实格式检查

    在ASP中,我们可以创建类(Class)来封装相关的功能,类的实例可以在多个页面中使用。`Class1`可能包含了进行文件真实格式检查的核心逻辑,如读取文件内容、解析文件头信息等,以确定文件的实际格式,而非仅仅依赖于...

Global site tag (gtag.js) - Google Analytics