2
我在C初學者++和佳能EDSDK,現在我可以控制相機進行拍攝使用SDK的照片,但我想保存的圖片到路徑C:\照片,我已經嘗試了一些方法,現在的照片不會保存到相機,但在我的電腦我無法找到他們。我應該如何更改我的代碼或添加什麼?拍照並保存圖片到我的C:使用edsdk 2.10照片,使用C++
#include "stdafx.h"
#include "EDSDK.h"
#include "EDSDKErrors.h"
#include "EDSDKTypes.h"
EdsError getFirstCamera(EdsCameraRef *camera);
int _tmain(int argc, _TCHAR* argv[])
{ EdsError err=EDS_ERR_OK;
EdsCameraRef camera=NULL;
bool isSDKloaded=false;
// Initialize SDK
err=EdsInitializeSDK();
if(err==EDS_ERR_OK)
{
isSDKloaded=true;
}
// Get first camera
if(err==EDS_ERR_OK)
{
err=getFirstCamera(&camera);
}
EdsOpenSession(camera);
EdsInt32 saveTarget = kEdsSaveTo_Host;
err = EdsSetPropertyData(camera, kEdsPropID_SaveTo, 0, 4, &saveTarget);
EdsSendCommand(camera, kEdsCameraCommand_TakePicture, 0);
EdsCloseSession(camera);
EdsTerminateSDK();
return 0;
}
EdsError getFirstCamera(EdsCameraRef *camera)
{
EdsError err=EDS_ERR_OK;
EdsCameraListRef cameraList=NULL;
EdsUInt32 count=0;
// Get camera list
err = EdsGetCameraList(&cameraList);
// Get number of cameras
if(err == EDS_ERR_OK)
{
err = EdsGetChildCount(cameraList, &count);
if(count == 0)
{
err = EDS_ERR_DEVICE_NOT_FOUND;
}
}
// Get first camera retrieved
if(err == EDS_ERR_OK)
{
err = EdsGetChildAtIndex(cameraList , 0 , camera);
}
// Release camera list
if(cameraList != NULL)
{EdsRelease(cameraList);
cameraList = NULL;
}
return err;
}
你檢查你的應用程序文件夾,通常其保存在那裏。還需要設置'舉辦memory'屬性'EdsCapacity hostMemory''EDSDK.EdsSetCapacity(相機,hostMemory)' – 2013-05-05 05:38:44