cjwcj 发表于 2009-6-23 20:52:02

关于一个SDK的问题

不知道破解的版本是否带SDK呢?
      我在网上偶然看见一个程序,觉得写得很好,是一个关于用CVI调用计算器与文本编辑器的程序,我试着编译了一下,总是出错, 是个连接错误,说程序中的ShellExecute()未定义,这个函数是<shellapi.h>中的,这个头文件属于CVI的SDK,我已把头文件加入工程中,为何还会出现这个连接错误呢?请CPUBBS指点一下!谢谢!
      程序如下:

#include "windows.h"
#include "shellapi.h"
#include "test1.h"



static int handle;
static int panelHandle;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "test1.uir", PANEL)) < 0)
return -1;

GetPanelAttribute (panelHandle, ATTR_SYSTEM_WINDOW_HANDLE, &handle);


DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
}
int CVICALLBACK calc (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
HWND hwnd;
switch (event)
{
case EVENT_COMMIT:
   ShellExecute((HWND)handle, "open", "calc.exe", NULL, NULL,SW_NORMAL);
   hwnd = FindWindow(NULL, "计算器");
   SetParent(hwnd, (HWND)handle);
   break;
}
return 0;
}
int CVICALLBACK notepad (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
HWND hwnd;
switch (event)
{
case EVENT_COMMIT:
   ShellExecute((HWND)handle, "open", "notepad.exe", NULL, NULL,SW_NORMAL);
   hwnd = FindWindow(NULL, "无标题 - 记事本");
   SetParent(hwnd, (HWND)handle);
   break;
}
return 0;
}
int CVICALLBACK QuitCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
   QuitUserInterface (0);
   break;
}
return 0;
}

gigio 发表于 2009-6-23 21:56:08

这个不是labview哦
页: [1]
查看完整版本: 关于一个SDK的问题