61阅读

安装程序无法创建新的系统分区-来自CSDN的"无限流"分页程序

发布时间:2017-10-19 所属栏目:电脑网络

一 : 来自CSDN的"无限流"分页程序

以下是代码片段: 
'******************************************************************  
'** 本程序名:"无限流"分页程序  
'** 作者:Arbiter(AAsx)  
'** 版本:Million Level  
'**  
'** QQ:22222xx  
'** Email:Arbiter@21cn.com  
'** http://www.imagecity.org/  
'******************************************************************  
'**  
'** 【作者的话】  
'**  
'** 分页程序无疑是许多网络程序功能中一个比较麻烦的东西,事实上现在  
'** 为止绝大部分人还是在使用传统的分页方法(Rs.PageSize=xx),而了解  
'** 数据库操作的人都知道,这种传统方式有个弊端:第一次打开页面时,  
'** 它会预读所有的记录集,这当在数据大的时候,这将是致命的,而且接  
'** 下来的翻页速度也会非常慢,很占用资源。对于十万数量级以上的数据  
'** 库这种传统分页方式已经显得非常无力,更别说百万级了(根本没法操  
'** 作)。基于这种原因,促使我做了本程序。  
'**  
'** 【程序功能】  
'**  
'** 针对大型的数据库进行分页操作,理想的可操作的数据记录量在200万  
'** 以内(Max Level版将无数量限制,且无论数据库多大,翻页速度都是  
'** 不变),这是Million Level版分页程序在赛扬1G、内存512、win2k环  
'** 境下的测试数据:  
'**  
'** SQLserver 2k + 10万条记录 + 每页显示20条:  
'** 平均翻页速度:45ms  
'** SQLserver 2k + 100万条记录 + 每页显示20条:  
'** 平均翻页速度:350ms  
'**  
'**  
'** 【分页原理】  
'**  
'** 本程序不再使用Rs.PageSize的方式分页,连接数据库的游标类型  
'** 也不是使用conn,1,x,而是conn,0,1,这应是最快的游标类型了,不要  
'** 以为这样会使程序变得复杂,相反,程序非常简单,如果你看不明白,  
'** 应该是我的编程风格你不习惯,而非程序复杂。  
'** "无限流"分页的中心是:每页只读出需要显示的记录,不再象传统  
'** 分页程序预读全部的数据,这正在本程序最大的优点--占用资源少,同  
'** 理速度也得到非常大的提升,特别在数据量越大的时候,它的速度优势  
'** 越明显(100万记录才350ms左右)。  
'** 当程序执行后,使用CurcorBegin和CurcorEnd记录显示的第一条记  
'** 录和最后一条记录的ID值,作为下一次翻页的标记,然后利用Top xx取  
'** 出需要的数据显示,同时又再对ID值进行记录。  
'**  
'** 【结 言】  
'**  
'** 本程序为共享版,提供给各程序爱好者研究使用,若要转载、散播、修  
'** 改或作其他用途,请尊重作者的辛劳,注明出处。  
'** 如果本程序中有错漏、非最优化等缺点,请到www.csdn.net的Web开发/  
'** ASP栏目中发表讨论,为了中国软件事业的发展,请不要固步自封:)  
'**  
'********************************************************************    
Option Explicit  
'Response.Flush  
Dim BeginTime,EndTime  
BeginTime=Timer  
Dim conn,SQLstr,Rs,DefRecordNum,CursorBegin,CursorEnd,CurPageNum,hav  
DefRecordNum=20  
'--------------获取相关参数----------  
If Request("CursorBegin")="" Then CursorBegin=0 Else CursorBegin=Request("CursorBegin")  
If Request("CursorEnd")="" Then CursorEnd=0 Else CursorEnd=Request("CursorEnd")  
If Request("CurPageNum")<>"" Then  
CurPageNum=CLng(Request("CurPageNum"))  
If CurPageNum<=0 Then CurPageNum=1  
Else  
CurPageNum=1  
End If  
hav=Request("hav")  
If hav="" Then hav="next"  
'----------------End-----------------  
'------------显示翻页内容函数--------  
Function TurnPageFS(DispRecordNum)  
Dim n  
While Not(Rs.Eof) And n n=n+1  
Response.Write ""&_  
""&Rs(0)&""&_  
""&Rs(1)&""&_  
""&Rs(2)&""&_  
""&Rs(3)&""&_  
""&Rs(4)&""&_  
""&Rs(5)&""&_  
""  
If n=1 Then CursorBegin=Rs(0)  
If n=DefRecordNum Or Rs.Eof Then CursorEnd=Rs(0)  
Rs.MoveNext  
Wend  
End Function  
'-------------连接数据库-------------  
Set conn=Server.CreateObject("Adodb.Connection")  
'SQLstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.Mappath("mldata.mdb")  
SQLstr="Driver={SQL Server};server=arbiter;uid=arbiter;pwd=123456;database=mldata"  
conn.Open SQLstr  
'---------统计总记录数/总页数---------  
'-PS:推荐使用count(ID),ID为自动编号且索引,否则速度有可能大打折扣  
'-PS:此统计是本程序中最耗资源的一部分,如果取消这段程序,速度会快上10倍左右  
Dim TotalRecords,TotalPages  
SQLstr="Select count(ID) As RecordSum From ABC"  
Set Rs=conn.Execute(SQLstr,0,1)  
TotalRecords=Rs("RecordSum")  
TotalPages=Abs(Int(TotalRecords/DefRecordNum*(-1)))  
Rs.Close  
Set Rs=Nothing  
'--------根据hav选择相应的SQL字串-----  
Select Case(hav)  
Case "back"  
CursorEnd=CursorBegin  
SQLstr="Select Top "&DefRecordNum&"_  
ID,Title,FileName,K,ImgSize,NameSon _  
From ABC Where ID<"&CursorBegin&_  
" And ID In (Select Top "&DefRecordNum_  
&" ID From ABC Where ID<"&CursorBegin_  
&" Order by ID DESC) Order by ID"  
Case "next"  
SQLstr="Select Top "&DefRecordNum_  
&" ID,Title,FileName,K,ImgSize,NameSon From ABC Where ID>"&CursorEnd&_  
" Order by ID"  
End Select  
Set Rs=conn.Execute(SQLstr,0,1)  
%>  



  

  
td,br,div,p,body {font-size:12px}  

  

   

首页 上一页   
下一页   

  

   
ID  
Title  
FileName  
大小  
尺寸  
类别      

首页 上一页   下一页  

function turnpage(func){  
var CurPageNum=; //取得当前页码  
var CursorBegin=; //取得第一个显示的记录的ID值  
var CursorEnd=; //取得最后一个显示的记录的ID值  
var TotalPages=; //取得页面总数   
var BackUrl='mllist.asp?CurPageNum='+(CurPageNum-1)+'&CursorBegin='+CursorBegin+'&CursorEnd='+CursorEnd+'&hav=back';  
var NextUrl='mllist.asp?CurPageNum='+(CurPageNum+1)+'&CursorBegin='+CursorBegin+'&CursorEnd='+CursorEnd+'&hav=next';  
if(CurPageNum<=1 && func=='back'){  
location.href='#';  
}else if(CurPageNum>=TotalPages && func=='next'){  
location.href='#';  
}else if(func=='back'){  
location.href=BackUrl;  
}else if(func='next'){  
location.href=NextUrl;  
}  
}

二 : RealPlayer11无法安装在装RealPlayer11的时

RealPlayer11无法安装

在装RealPlayer11的时候提示无法安装,错误!求助!


正版的RealPlayer11需要wondows操作系统才能安装,否则通不过验证``就不能安装拉!!所以你只能用 免验证版的或破解版的

RealPlayer11

这有

三 : 无法安装WindowsXP安全更新程序(KB956572)怎么回?

无法安装Windows XP 安全更新程序 (KB956572)怎么回事?

我的windows设置的是自动更新,应该是正版的,以前一直都没有问题的。可是这次的KB956572,一点就提示无法安装某些更新,这是怎么回事啊?屏幕右下角一直有提示更新的标志,可是就是无法安装更新?
我用360查找漏洞,也没有查找到什么。
我用的杀毒是和360配套的nod,不知会不会和这个有关系?
着急中,请高手指点!
谢谢了


或者你开始按F8进入安全模式打补丁试试,安全模式补丁应该可以全打上去的

四 : 安装程序无法创建新的系统分区和定位现有系统分区

u启动u盘装系统时出现“安装程序无法创建新的系统分区,也无法定位现有系统分区”的提示该怎么办?

安装程序无法创建新的系统分区和定位现有系统分区 安装程序无法创建新的系统分区

如上图所示就是在安装系统的过程中出现的“安装程序无法创建新的系统分区,也无法定位现有系统分区。有关详细信息,请阅读安装日志文件。”的提示,下面u启动小编为你介绍解决方案!

1、将windows镜像文件放到电脑的磁盘中。(非系统盘,即C盘除外)

2、将windows镜像文件解压到该磁盘上。

3、利用u启动制作好的启动u盘引导电脑进入WinPE系统。

4、进入WinPE系统后,将C盘格式化并将其格式转换为NTFS。从解压的镜像文件夹中找到boot , bootmgr 和sources这三个文件,并且复制到C盘根目录下。

5、在WinPE系统中运行“cmd”,然后输入“ c:\boot\bootsect.exe /nt60 c: ”,然后按下回车键,看到提示successful字样的语句时即为成功了!然后重启电脑。

6、将u盘拔下来,重新启动电脑即可。

五 : 劲爆教程----Cubietruck备份nand上的系统并且创建自己的live

本帖最后由 myoldman 于 2014-1-26 09:52 编辑

准备工作:

host操作系统:Ubuntu 12.04 LTS 64位

解包打包工具:imgrepacker

下载地址:http://dl.xda-developers.com/attachdl/b5cefe233b006dbe3a87ce2f05398f31/52d62724/1/7/4/0/4/0/1/imgRePacker_204.zip

分区表更新工具:

git clonehttps://github.com/npeacock/a31sdk-tools.git

基础nand img:官方lubuntu-server

下载地址:http://dl.cubieboard.org/software/a20-cubietruck/lubuntu/ct-lubuntu-nand-v1.01/ct-lubuntu-server/lubuntu-server-nand.img.gz

基础sdcard img:也是基于官方的

以下是步骤

1.解包官方img

./imgrepackerlubuntu-server-nand.img

得到如下文件列表

boot0_nand.bin

-rw-rw-r-- 1 liuhong liuhong 24576 1月 15 15:53 boot0_nand.bin

-rw-rw-r-- 1 liuhong liuhong 24576 1月 15 15:53 boot0_sdcard.fex

-rw-rw-r-- 1 liuhong liuhong 425984 1月 15 15:53 boot1_nand.fex

-rw-rw-r-- 1 liuhong liuhong 294912 1月 15 15:53 boot1_sdcard.fex

-rw-rw-r-- 1 liuhong liuhong 10839040 1月 17 11:52 bootloader.fex

-rw-r--r-- 1 liuhong liuhong 16384 1月 16 22:59 dlinfo.fex

-rw-rw-r-- 1 liuhong liuhong 5122 1月 15 15:59 image.cfg

drwxrwxr-x 2 liuhong liuhong 4096 1月 15 23:23 _img.files

drwxrwxr-x 2 liuhong liuhong 4096 1月 16 17:48 _iso

-rw-rw-r-- 1 liuhong liuhong 1470103552 1月 17 11:53 rootfs.fex

-rw-rw-r-- 1 liuhong liuhong 512 1月 15 15:53 split_xxxx.fex

-rw-r--r-- 1 liuhong liuhong 65536 1月 16 23:00 sunxi_mbr.fex

-rw-rw-r-- 1 liuhong liuhong 53470 1月 15 23:24 sys_config.fex

-rw-rw-r-- 1 liuhong liuhong 302 1月 16 22:41 sys_partition.fex

-rw-r--r-- 1 root root 4 1月 17 11:53 Vbootloader.fex

-rw-r--r-- 1 root root 4 1月 17 11:53 Vrootfs.fex

drwxrwxr-x 3 liuhong liuhong 4096 1月 15 15:53 work

2.备份nand上运行的rootfs,并且制作

用sd卡启动cubietruck后于u运行如下命令

sudo mount /dev/nandb /mnt

sudo tar zxvf rootfs.tar.gz -C /mnt ./

这边rootfs.tar.gz就是已经打包好的正在运行的文件系统。

把rootfs.tar.gz下载到主机ubuntu上运行如下命令重新打包img

sudo ./mk_ext4_rootfs.sh rootfs.tar.gz rootfs.fex

cp rootfs.fex lubuntu-server-nand.img.dump/_iso/rootfs.fex.iso

cp rootfs.fex lubuntu-server-nand.img.dump/rootfs.fex

rm rootfs.fex -f

./imgrepacker lubuntu-server-nand.img.dump

这里会生成一个新的lubuntu-server-nand.img文件,该文件可以用livesuit烧写到板子中。

mk_ext4_rootfs.sh参考附件脚本。

3.修改img中的默认script.bin,uImage, uEnv.txt等

运行如下命令mount bootloader

sudo mount -t vfat lubuntu-server-nand.img.dump/_iso/bootloader.fex.iso/mnt

这里请注意,不要直接在/mnt中修改uEnv.txt文件,需要在其他地方修改完后,sudo cp uEnv.txt /mnt拷贝覆盖

完成修改后执行如下命令保存bootloader.fex.iso

sudo umount /mnt

这里还要注意一个问题,如果有修改script.bin

lubuntu-server-nand.img.dump/sys_config.fex也必须修改,否则会出现无法启动的问题。

重新打包系统

./imgrepacker lubuntu-server-nand.img.dump

4.mbr文件更新

mbr重新生成工具必须用一下这个工具

git clonehttps://github.com/npeacock/a31sdk-tools.git

步骤如下

首先修改lubuntu-server-nand.img.dump/sys_partition.fex中的文件这里主要是要修成resize后nand只有2g的问题。

修改结果如下

[partition]

name = rootfs

size = 14778368

downloadfile = "rootfs.fex"

verify = 1

把rootfs的size改成14778368就可以了。

编辑结束后 a31sdk-tools/pack/pctools/linux/mod_update/script

a31sdk-tools/pack/pctools/linux/mod_update/script lubuntu-server-nand.img.dump/sys_partition.fex

重新生成sys_partition.bin

a31sdk-tools/pack/pctools/linux/mod_update/update_mbr lubuntu-server-nand.img.dump/sys_partition.fex

这里会重新生成dlinfo.fex和sunxi_mbr.fex

最后再用

./imgrepacker lubuntu-server-nand.img.dump打包,这样img刷入以后nand就直接有8g了。

以上只是简单说明,中间操作过程有啥请跟贴,我会一一解答。



mk_ext4_rootfs.tar.gz

620 Bytes, 下载次数: 42, 下载积分: 金钱 -1

下载完,请解压。

已有4人评分威望金钱贡献收起理由

jerryli+ 1+ 1+ 1很给力! 好东西

搞IT的小鸟+ 5+ 5+ 5赞一个!

newcb3user+ 5+ 5+ 5很给力!

cubieplayer+ 5+ 5+ 5很给力!

总评分:威望 + 16金钱 + 16贡献 + 16 查看全部评分



淘帖0分享0收藏4评分

回复举报

myoldman



4

主题0

好友911

积分

高级会员



贡献

178

金钱

357

威望

178

买家信用



卖家信用



积分

911

发消息

沙发

  发表于 2014-1-20 14:36:30|只看该作者

那个附件下载的金钱怎么取消呀~~我拿了也没用哦,能取消么。

回复评分举报

myoldman



4

主题0

好友911

积分

高级会员



贡献

178

金钱

357

威望

178

买家信用



卖家信用



积分

911

发消息

板凳

  发表于 2014-1-20 17:39:42|只看该作者

TARGET=$PWD"/target_tmp"

cleanup() {

sudo umount $TARGET ||true

sudo sudo rm -rf $TARGET

}

die() {

echo "$*" >&2

cleanup

exit 1

}

set -e

make_rootfs()

{

echo "Make rootfs"

local rootfs=$(readlink -f "$1")

local output=$(readlink -f "$2")

local fsizeinbytes=$(gzip -lq "$rootfs" | awk -F" " '{print $2}')

local fsizeMB=$(expr $fsizeinbytes / 1024 / 1024 + 200)

local d= x=

local rootfs_copied=

echo "Make linux.ext4 (size="$fsizeMB")"

mkdir -p $TARGET

rm -f linux.ext4

dd if=/dev/zero of=linux.ext4 bs=1M count="$fsizeMB"

mkfs.ext4 linux.ext4

sudo umount $TARGET || true

sudo mount linux.ext4 $TARGET -o loop=/dev/loop0

cd $TARGET

echo "Unpacking $rootfs"

sudo tar xzpf $rootfs ||die "Unable to extract rootfs"

rootfs_copied=1

[ -n "$rootfs_copied" ] || die "Unsupported rootfs"

cd - > /dev/null

mv linux.ext4 $output

}

[ $# -eq 2 ] || die "Usage: $0 [rootfs.tar.gz] [output]"

make_rootfs "$1" "$2"

cleanup

脚本直接贴上来了,请各位自己保存后运行。

回复评分举报

jinhe1314



0

主题0

好友1203

积分

金牌会员

  

贡献

231

金钱

506

威望

231

买家信用



卖家信用



积分

1203

发消息

地板

  发表于 2014-1-26 09:47:00|只看该作者

mark

好东西

回复评分举报

myoldman



4

主题0

好友911

积分

高级会员



贡献

178

金钱

357

威望

178

买家信用



卖家信用



积分

911

发消息

5#

  发表于 2014-1-26 09:51:10|只看该作者

这里还要注意一个问题,如果有修改script.bin

lubuntu-server-nand.img.dump/sys_config.fex也必须修改,否则会出现无法启动的问题。

以上谢谢~~

回复评分举报

arp163



5

主题0

好友1119

积分

金牌会员

  

贡献

213

金钱

467

威望

213

买家信用



卖家信用



积分

1119

发消息

6#

  发表于 2014-2-9 14:13:40|只看该作者

这个帖子太好了。多谢楼主

回复评分举报

newcb3user



1

主题0

好友209

积分

中级会员

  

贡献

45

金钱

65

威望

45

买家信用



卖家信用



积分

209

发消息

7#

  发表于 2014-2-20 09:29:53|只看该作者

你好,楼主,真是有用的好帖子,我在按步骤执行的时候在重新打包系统的那个步骤遇到问题:

Verification counted for "/bootloader.fex"

"/Vbootloader.fex" injected

Swithed to modified old method

"/rootfs.fex" Can't open file "lubuntu-desktop-nand.img.dump//rootfs.fex"

==========================[ STOP]==========================

不知道为什么文件的路径名称后面多出来了一个反斜杠呢,我的系统是ubuntu11.10

回复评分举报

myoldman



4

主题0

好友911

积分

高级会员



贡献

178

金钱

357

威望

178

买家信用



卖家信用



积分

911

发消息

8#

  发表于 2014-2-21 12:52:59|只看该作者

newcb3user 发表于 2014-2-20 09:29

你好,楼主,真是有用的好帖子,我在按步骤执行的时候在重新打包系统的那个步骤遇到问题:

Verification ...

这里多一个斜杠应该没有关系,你看看rootfs.fex这个文件是不是存在

回复评分举报

aaron



25

主题11

好友5812

积分

版主

    

贡献

1098

金钱

2256

威望

1098

买家信用



卖家信用



积分

5812

发消息

9#

  发表于 2014-3-2 17:46:58|只看该作者

sudo ./mk_ext4_rootfs.sh testfs.tar.gz rootfs.fex

Make rootfs

Make linux.ext4 (size=259)

259+0 records in

259+0 records out

271581184 bytes (272 MB) copied, 0.129525 s, 2.1 GB/s

mke2fs 1.42 (29-Nov-2011)

linux.ext4 is not a block special device.

Proceed anyway? (y,n) y

Discarding device blocks: done

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

Stride=0 blocks, Stripe width=0 blocks

66528 inodes, 265216 blocks

13260 blocks (5.00%) reserved for the super user

First data block=1

Maximum filesystem blocks=67633152

33 block groups

8192 blocks per group, 8192 fragments per group

2016 inodes per group

Superblock backups stored on blocks:

8193, 24577, 40961, 57345, 73729, 204801, 221185

Allocating group tables: done

Writing inode tables: done

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

umount: /work/chird/target_tmp: not mounted

mount: stolen loop=/dev/loop0

##并没有生成rootfs.fex,怎么回事,楼主?谢谢!

回复评分举报

aaron



25

主题11

好友5812

积分

版主

    

贡献

1098

金钱

2256

威望

1098

买家信用



卖家信用



积分

5812

发消息

10#

  发表于 2014-3-2 17:52:22|只看该作者

2.备份nand上运行的rootfs,并且制作

用sd卡启动cubietruck后于u运行如下命令

sudo mount /dev/nandb /mnt

sudo tar zxvf rootfs.tar.gz -C /mnt ./

最后一个命令行应该是:

sudo tar zcvf rootfs.tar.gz -C /mnt ./

回复
本文标题:安装程序无法创建新的系统分区-来自CSDN的&quot;无限流&quot;分页程序
本文地址: http://www.61k.com/1100983.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1