2010-01-06 107 views

回答

11

@Heinz,控制必须使用SDK,必须由该设备的制造商提供的设备。

nikon网站:

....我们提供的库程序 和命令 软件应用程序提供 远程控制功能,尼康 连接到 数码单镜反光相机API规范电脑。当这些被利用时, 软件应用程序可用于修改相机设置,包括 快门速度,光圈和ISO 灵敏度,并控制相机 操作,包括快门释放。

this页面,您可以找到SDK的尼康相机,包括D5000系列。

再见。

+0

谢谢,我已经donwload的SDK 。但我寻找更简单的方法。目前我正在看“Windows图像采集”。 –

+0

因为我没有运行WIA解决方案,所以我深入了解SDK。是否有可用的SDK的delphi包装? –

8

我会建议使用WIA(Windows图像采集)API。为此,您需要将由德尔福自动执行以下步骤时创建的文件“WIALib_TLB.pas”:从菜单

  • 选择“”微软Windows图像采集

    1. 选择“项目>导入类型库” 1.01类型库”,从列表中
    2. 选择‘创建单位’
    3. 那么你将得到单位‘WIALib_TLB.pas’

    使用从以下网址的代码,看看如何可以枚举无济于事能够使用的设备及其属性,并使用相机拍摄快照。

    http://www.neunbeere.de/UseNet/WIA.html

    对不起,该评论是在德国,但我认为代码很容易从组件菜单中选择导入组件了解

  • +0

    谢谢,我编译了你的源代码。我得到相机的属性,我可以从相机转移照片,但在TakePicture调用后没有照片返回(相机:Canon Powershout 520,Nikon D5000)。 其他WIA程序也有同样的问题。有任何想法吗? –

    +3

    TakePicture适用于网络摄像机,即用于将摄像机图像直接传输到计算机的摄像机。 TakePicture意味着只在您调用方法的那一刻拍摄快照。 大多数不是网络摄像头的普通数码相机不允许在相机连接到电脑时拍照。您只能访问已存储在相机上的照片。 – NineBerry

    +1

    看起来提问者特别需要能够触发从相机拍摄照片。 – Luke

    1
    • 可以使用WIA(Windows图像采集)
    • 并选择窗口图像 采集并安装它
    • download并添加到您的项目
    • 然后
    • 如果你使用Win XP的
    • 启动新项目,并把
    • 名为Button1
    • 命名MultiPic
    • 和复制的鳕鱼和过去在Button1的
    • 新的复选框

    新按钮鳕鱼:

    procedure TForm1.Button1Click(Sender: TObject); 
    var 
        wia:IWia; 
        WiaInf: IWiaDeviceInfo; 
        wiaImg: IWiaDispatchItem; 
        I:integer; 
        Coll: ICollection; 
    begin 
        wia:=CoWia.Create; 
        WiaInf:= WIA.Devices.Item[0] as IWiaDeviceInfo; 
        wiaImg:=WiaInf.Create; 
        if MultiPic.Checked then 
        begin 
        coll:=wiaImg.GetItemsFromUI(UseCommonUI, MaximizeQuality); 
        for I := 0 to coll.Count - 1 do 
         begin 
         wiaImg:=coll.Item[i] as IWiaDispatchItem ; 
         wiaImg.Transfer('C:\Source\test'+inttostr(i)+'.bmp',false); 
         end; 
        end 
        else 
        begin 
        wiaImg:=wiaImg.GetItemsFromUI(SingleImage, MaximizeQuality).Item[0] as IWiaDispatchItem ; 
        wiaImg.Transfer('C:\Source\test.bmp',false); 
        end; 
    end; 
    
    • 我使用复选框为用户确定他是否要1张或多 图片

    • 您可以通过loadfromfile加载图片/ s的图像