asp.net 网页居中(2009-07-01 17:18)
<table cellspacing='1' cellpadding='1' width='712' border='0'
align='center'>
</table>
<marquee style='WIDTH: 220px; HEIGHT: 250px' direction='up'
scrolldelay='200'
onmouseover='this.stop()'onmouseout='this.start()'>
<asp:GridView id='GVItemOne' runat='server' Width='223px'
Font-Size='9pt' Height='39px' ForeColor='RoyalBlue'
AutoGenerateColumns='False' CellPadding='4' DataKeyNames='ID'
GridLines='None' PageSize='15'>
<FooterStyle BackColor='#507CD1' ForeColor='White'
Font-Bold='True'></FooterStyle>
说明: 执行当前 Web
请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.OleDb.OleDbException: 操作必须使用一个可更新的查询。
出错原因:
由于文件夹里的数据库文件 *.mdb ( 没修改数据库名的话)没有数据更新权限。
解决方法:
1.Win 2000/ Win 2003
系统,在数据库文件上(*.mdb)点鼠标右键,选择属性,点安全,查看是否存在everyone用户,如果没有,添加everone用户,勾选'完全控制'.
2.Win XP 系统,打开 data
文件夹,点击“工具”->“文件夹选项”->“查看”,找到“使用简单文件共享(推荐)”这项,把前面的勾去掉。然后在数据库文件上(*.mdb)点鼠标右键,选择属性,点安全,查看是否存在everyone用户,如果没有,添加everone用户,勾选'完全控制'.
////删除多选记录
procedure THistoryForm.DeleteButtonClick(Sender: TObject);
var
tempBookMark:TbookMark;
i:integer;
begin
if dbgrid1.SelectedRows.Count <= 0 Then
begin
MessageBox(Handle,'请选择您要删除的记录','提示',MB_OK);
Exit;
end;
If
MessageBox(Handle,'删除后数据将不可恢复,您确定要删除吗?','提示',mb_iconinformation+mb_YesNo)=IdYes
Then
Begin
i:=0;
DBGrid1.Datasource.Dataset.DisableControls;
While i<=dbgrid1.SelectedRows.Count - 1
Do
Begin
DBGrid1.Datasource.Dataset.Bookmark:=dbgrid1.SelectedRows.Items[i];//重要的在这里,取得BOOKMARK
TempBookmark:=DBGrid1.Datasource.Dataset.GetBookmark;
DBGrid1.Datasource.Da
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,
Dialogs,Zlib, OleCtrls, ShockwaveFlashObjects_TLB,
StdCtrls;
type
TBitWidth = Integer;
TSWFRect = packed record
Xmin:
Integer;
// in twips
Xmax:
Integer;
// in twips
Ymin:
Integer; &nb
var m_bSort: boolean=false; //控制正反排序的变量
//ListView排序的回调函数,默认的是快速排序法,也可以自己在这里做算法
function CustomSortProc(Item1, Item2:
TListItem; ParamSort: integer): integer;
stdcall;
var txt1,txt2 : string;
begin
if ParamSort <> 0
then begin
txt1 :=
Item1.SubItems.Strings[ParamSort - 1];
txt2 :=
Item2.SubItems.Strings[ParamSort - 1];
if m_bSort
then begin
&
Delphi 取IE临时文件夹路径(2009-05-05 16:41)
uses Registry
var
reg:TRegistry;
begin
Try
reg:=tregistry.create;
reg.rootkey:=HKEY_LOCAL_MACHINE;
if
reg.openkey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet
Settings\Cache\Paths',False) then
TemPath:=ExtractFilePath(reg.ReadString('Directory'));
reg.CloseKey; //关闭KEY
reg.Free; //释放
Except
end;
Delphi 检测U盘状态(2009-05-05 16:26)
uses StdCtrls,shlobj,Activex,ComObj;
procedure WMDEVICECHANGE(var msgx:Tmessage);message
WM_DEVICECHANGE;
function GetLastMoveDrive:String;
var
Drivetype:Integer;
root:String;
i:Integer;
begin
Result:='';
for i:=67 to 91
do //从C:盘开始到Z:盘
begin
root:=char(i)+':\';
Drivetype:=GetDriveType(pChar(root));
if
Drivetype=DRIVE_REMOVABLE then
begin
Result:='插入U盘 '+root;
Break;
end;
end;
end;
procedure WMDEVICECHANGE(var
Delphi 取IE历史记录列表(2009-05-05 16:20)
uses shlobj,Activex,ComObj;
function GetHistoryToday(List: TStrings): Integer;
var
pvDesktop:
IShellFolder;
pvFolder:
IShellFolder;
pvToday:
IShellFolder;
pvEnumToday: IEnumIDList;
pvEnumHist: IEnumIDList;
pvMalloc:
IMalloc;
pidlHistory: PItemIDList;
pidlToday:
PItemIDList;
pidlItem:
PItemIDList;
lpValue:
TStrRet;
lpItem:
TStrRet;
szValue:
String;
cbCount:
Function
GetURL(H:hwnd;lparam:longint):boolean;stdcall;
var str,url:array [0..254]
of char;
begin
getclassname(h,@str,255);
if strpas(@str)='ComboBoxEx32'
then
begin
SendMessage(h,WM_GETTEXT,255,LongInt(@url));
if Pos('http://',strpas(@url))>0 then
begin
if
Pos(strpas(@url),Form1.Memo1.Text)<=0 then
Form1.Memo1.lines.Add(strpas(@url));
end;
end;
result:=true;
end;
function
callbackproc(H:HWnd;lparam:longint):Boolean;stdcall;
var str:array [1..255]
of char;
begin
getclassname(h,@st