数据库、图片均存储在服务器上,通过查询条件,可以得到记录。欲查看的图片的文件夹名从记录中可以得到。现在就是局域网各个用户想依次浏览这个文件的所有图片文件。
图片文件均存放在服务器d盘,知道服务器IP地址登录口令。应当怎样实现。 新手,当学习delphi,劳烦各位出出主意,说的详细些。
图片文件均存放在服务器d盘,知道服务器IP地址登录口令。应当怎样实现。 新手,当学习delphi,劳烦各位出出主意,说的详细些。
解决方案 »
- 我知道回车键是#13 ,,但是同时按ctrl+回车键chu触发事件怎么写指令?
- 请问一下啊!窗体form1与窗体form2之间怎样提取控件的属性啊???
- 关于把数据库中保存的图片显示到Excel中的问题
- 杭州的朋友请进
- 关于多条记录中取第一条的问题
- 组件中调用Web Service的问题
- 巨难问题。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
- 如何知道记录结构里面记录的总数?
- ClientSocket控件中,address属性和host属性有什么区别?
- 各位大哥:opendialog 这样用为什么不行?谢谢!
- delphi 三层如何调中中间层的 procedure 呢?
- delphi下标操作符([])
去查下数据库图片保存,读取
没法用数据库保存了还有别的方法没有
能不能通过API将文件下载到本地,再浏览 之类的
Option Compare Database
Option Explicit'************ Code Start **********
'This code was originally written by Dev Ashish.
'It is not to be altered or distributed,
'except as part of an application.
'You are free to use it in any application,
'provided the copyright notice is left unchanged.
'
'Code Courtesy of
'Dev AshishPrivate Declare Function apiShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long'***App Window Constants***
Public Const WIN_NORMAL = 1 'Open Normal
Public Const WIN_MAX = 2 'Open Maximized
Public Const WIN_MIN = 3 'Open Minimized'***Error Codes***
Private Const ERROR_SUCCESS = 32&
Private Const ERROR_NO_ASSOC = 31&
Private Const ERROR_OUT_OF_MEM = 0&
Private Const ERROR_FILE_NOT_FOUND = 2&
Private Const ERROR_PATH_NOT_FOUND = 3&
Private Const ERROR_BAD_FORMAT = 11&'***************Usage Examples***********************
'Open a folder: ?fHandleFile("C:\TEMP\",WIN_NORMAL)
'Open a folder: ?fHandleFile("\\192.168.0.45\TEMP\TEMP.JPG",WIN_NORMAL)
'Call Email app: ?fHandleFile("mailto:[email protected]",WIN_NORMAL)
'Open URL: ?fHandleFile("http://home.att.net/~dashish", WIN_NORMAL)
'Handle Unknown extensions (call Open With Dialog):
' ?fHandleFile("C:\TEMP\TestThis",Win_Normal)
'Start Access instance:
' ?fHandleFile("I:\mdbs\CodeNStuff.mdb", Win_NORMAL)
'****************************************************Function fHandleFile(stFile As String, lShowHow As Long)
Dim lRet As Long, varTaskID As Variant
Dim stRet As String
'First try ShellExecute
lRet = apiShellExecute(hWndAccessApp, vbNullString, _
stFile, vbNullString, vbNullString, lShowHow) If lRet > ERROR_SUCCESS Then
stRet = vbNullString
lRet = -1
Else
Select Case lRet
Case ERROR_NO_ASSOC:
'Try the OpenWith dialog
varTaskID = Shell("rundll32.exe shell32.dll,OpenAs_RunDLL " _
& stFile, WIN_NORMAL)
lRet = (varTaskID <> 0)
Case ERROR_OUT_OF_MEM:
stRet = "Error: Out of Memory/Resources. Couldn't Execute!"
Case ERROR_FILE_NOT_FOUND:
stRet = "Error: File not found. Couldn't Execute!"
Case ERROR_PATH_NOT_FOUND:
stRet = "Error: Path not found. Couldn't Execute!"
Case ERROR_BAD_FORMAT:
stRet = "Error: Bad File Format. Couldn't Execute!"
Case Else:
End Select
End If
fHandleFile = lRet & _
IIf(stRet = "", vbNullString, ", " & stRet)
End Function
'************ Code End **********这个是VB的例子.....
或者你可以试试FTP控件
1:共享或者映射,把服务器地址可以存在配置文件或者是数据库中
2:把图片下载到本地再加载,可用ftp或者用socket
能不能用WNetAddConnection2
下面的程序显示连接成功了,怎样访问呢?图片位置是10.209.7.118的D:\098\1.ttfvar NetSource : TNetResource; //连接服务器结构
dwResult:DWORD; //连接文件服务器的返回值
g_bFlag:boolean;begin
g_bFlag:=True;
NetSource.dwType:= RESOURCETYPE_ANY;
NetSource.lpLocalName:='';
NetSource.lpRemoteName:=PAnsiChar('\\'+'10.209.7.118');
NetSource.lpProvider:='';
dwResult:=WnetAddConnection2(NetSource,PAnsiChar('123456'),PAnsiChar('aaa'),CONNECT_UPDATE_PROFILE); if dwResult<>0 then
begin
MessageDlg('连接文件服务器失败!'#13#10'请重新设置!',mtWarning,[mbOk],0);
g_bFlag:=False;
end;
end
文件位置没有共享,除了用ftp方式,还有别的办法没有?
1、socket服务器,自己编程。
2、ftp服务器,有现存的ftp软件可用。
3、使用共享或者映射。