找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 7258|回复: 13

[求助] VC6.0编译 对话框 无法生成.dll文件

[复制链接]

2

主题

13

回帖

124

积分

上等兵

积分
124
发表于 2012-8-13 20:32:25 | 显示全部楼层 |阅读模式
我用VC6.0编译UISTYLER对话框的时候总是出现这样的情况,无法生成.dll文件,很是郁闷,求高手指教:

zhengtichicun.cpp
f:\zhengtichicun\zhengtichicun.h(63) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.h(67) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.h(71) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.h(75) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.h(79) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.h(83) : error C2061: syntax error : identifier 'UF_STYLER_item_value_type_p_t'
f:\zhengtichicun\zhengtichicun.cpp(98) : error C2146: syntax error : missing ';' before identifier 'DUANLIANG_cbs'
f:\zhengtichicun\zhengtichicun.cpp(98) : fatal error C1004: unexpected end of file found
补充:在其他电脑编译却能生成.dll文件

519

主题

4347

回帖

9万

积分

超级版主

积分
93158
发表于 2012-8-13 20:35:54 | 显示全部楼层
深奥的东西·等待高人来解决{}

1630

主题

4204

回帖

11万

积分

大将

积分
116723

优秀版主论坛贡献灌水王推广达人活跃会员论坛元老

发表于 2012-8-13 22:28:36 | 显示全部楼层
看起来貌似是语法错误
楼主是不是在变量后面少了分号啊

12

主题

3002

回帖

2万

积分

少将

积分
21076

灌水王活跃会员

发表于 2012-8-13 22:59:10 | 显示全部楼层
楼主,不论什么情况你一定要hold住!hold住就是胜利!

2

主题

13

回帖

124

积分

上等兵

积分
124
 楼主| 发表于 2012-8-14 20:18:06 | 显示全部楼层
hqu8808 发表于 2012-8-13 22:28
看起来貌似是语法错误
楼主是不是在变量后面少了分号啊

改了,在别人的电脑里可以编译成功,我估计是我装的VC有问题,但不确定。你说的语法错误也有可能。有没有人能帮忙一下啊

2

主题

13

回帖

124

积分

上等兵

积分
124
 楼主| 发表于 2012-8-14 20:19:02 | 显示全部楼层
hy19491001 发表于 2012-8-13 22:59
楼主,不论什么情况你一定要hold住!hold住就是胜利!

还是谢谢{:}

1630

主题

4204

回帖

11万

积分

大将

积分
116723

优秀版主论坛贡献灌水王推广达人活跃会员论坛元老

发表于 2012-8-14 20:29:15 | 显示全部楼层
一线天001 发表于 2012-8-14 20:18
改了,在别人的电脑里可以编译成功,我估计是我装的VC有问题,但不确定。你说的语法错误也有可能。有没有 ...

你的UG是那个版本的啊··

2

主题

13

回帖

124

积分

上等兵

积分
124
 楼主| 发表于 2012-8-14 20:40:59 | 显示全部楼层
hqu8808 发表于 2012-8-14 20:29
你的UG是那个版本的啊··

6.0。我把程序弄上

2

主题

13

回帖

124

积分

上等兵

积分
124
 楼主| 发表于 2012-8-14 20:43:09 | 显示全部楼层
一线天001 发表于 2012-8-14 20:40
6.0。我把程序弄上

int DUANLIANG_constructor_cb ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
     /* Make sure User Function is available. */  
     if ( UF_initialize() != 0)
          return ( UF_UI_CB_CONTINUE_DIALOG );

     /* ---- Enter your callback code here ----- */
double arExpValue[10];

        for(int i=0;i<10;i++)
                arExpValue=0.0f;
   
        UF_MODL_eval_exp("Lenth",&arExpValue[0]);
        UF_MODL_eval_exp("Hight",&arExpValue[1]);
        UF_MODL_eval_exp("Width",&arExpValue[2]);
        UF_MODL_eval_exp("H1",&arExpValue[3]);
        UF_MODL_eval_exp("R",&arExpValue[4]);
        UF_MODL_eval_exp("L",&arExpValue[5]);
        UF_MODL_eval_exp("thick_a",&arExpValue[6]);
        UF_MODL_eval_exp("thick_b",&arExpValue[7]);
        UF_MODL_eval_exp("thick_c",&arExpValue[8]);
        UF_MODL_eval_exp("thick_d",&arExpValue[9]);

UF_STYLER_item_value_type_t data_set;

    data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_LENTH;
        data_set.value.real=arExpValue[0];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_HIGHT;
        data_set.value.real=arExpValue[1];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_WIDTH;
        data_set.value.real=arExpValue[2];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);
       
        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_H1;
        data_set.value.real=arExpValue[3];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_R;
        data_set.value.real=arExpValue[4];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_L;
        data_set.value.real=arExpValue[5];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_THICK_A;
        data_set.value.real=arExpValue[6];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);
       
        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_THICK_B;
        data_set.value.real=arExpValue[7];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_THICK_C;
        data_set.value.real=arExpValue[8];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);
       
        data_set.item_attr=UF_STYLER_VALUE;
    data_set.item_id=DUANLIANG_THICK_D;
        data_set.value.real=arExpValue[9];
        UF_STYLER_set_value(dialog_id,&data_set);
    UF_STYLER_free_value(&data_set);

     UF_terminate ();

    /* Callback acknowledged, do not terminate dialog */
    return (UF_UI_CB_CONTINUE_DIALOG);
    /* A return value of UF_UI_CB_EXIT_DIALOG will not be accepted    */
    /* for this callback type.  You must continue dialog construction.*/

}
这是析构函数的回调函数

2

主题

13

回帖

124

积分

上等兵

积分
124
 楼主| 发表于 2012-8-14 20:43:55 | 显示全部楼层
一线天001 发表于 2012-8-14 20:43
int DUANLIANG_constructor_cb ( int dialog_id,
             void * client_data,
             UF_S ...

下面是ok按钮的回调函数
int DUANLIANG_ok_cb ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
     /* Make sure User Function is available. */  
     if ( UF_initialize() != 0)
          return ( UF_UI_CB_CONTINUE_DIALOG );

     /* ---- Enter your callback code here ----- */
     double Lenth;
         double Hight;
         double Width;
         double H1;
         double R;
         double L;
     double thick_a;
         double thick_b;
         double thick_c;
         double thick_d;

         char exps_string[10][20];

     UF_STYLER_item_value_type_t data[10];

         data[0].item_attr=UF_STYLER_VALUE;
         data[0].item_id=DUANLIANG_LENTH;
     UF_STYLER_ask_value(dialog_id,&data[0]);

         data[1].item_attr=UF_STYLER_VALUE;
         data[1].item_id=DUANLIANG_HIGHT;
     UF_STYLER_ask_value(dialog_id,&data[1]);

         data[2].item_attr=UF_STYLER_VALUE;
         data[2].item_id=DUANLIANG_WIDTH;
     UF_STYLER_ask_value(dialog_id,&data[2]);

         data[3].item_attr=UF_STYLER_VALUE;
         data[3].item_id=DUANLIANG_H1;
     UF_STYLER_ask_value(dialog_id,&data[3]);

         data[4].item_attr=UF_STYLER_VALUE;
         data[4].item_id=DUANLIANG_R;
     UF_STYLER_ask_value(dialog_id,&data[4]);

         data[5].item_attr=UF_STYLER_VALUE;
         data[5].item_id=DUANLIANG_L;
     UF_STYLER_ask_value(dialog_id,&data[5]);

         data[6].item_attr=UF_STYLER_VALUE;
         data[6].item_id=DUANLIANG_THICK_A;
     UF_STYLER_ask_value(dialog_id,&data[6]);
     
         data[7].item_attr=UF_STYLER_VALUE;
         data[7].item_id=DUANLIANG_THICK_B;
     UF_STYLER_ask_value(dialog_id,&data[7]);

         data[8].item_attr=UF_STYLER_VALUE;
         data[8].item_id=DUANLIANG_THICK_C;
     UF_STYLER_ask_value(dialog_id,&data[8]);
     
         data[9].item_attr=UF_STYLER_VALUE;
         data[9].item_id=DUANLIANG_THICK_D;
     UF_STYLER_ask_value(dialog_id,&data[9]);

         Lenth=data[0].value.real;
         Hight=data[1].value.real;
         Width=data[2].value.real;
         H1=data[3].value.real;
         R=data[4].value.real;
         L=data[5].value.real;
         thick_a=data[6].value.real;
         thick_b=data[7].value.real;
         thick_c=data[8].value.real;
         thick_d=data[9].value.real;

         for(int i=0;i<10;i++)
         {
             UF_STYLER_free_value(&data);
         }

         //修改表达式的值
         sprintf(exps_string[0],"Lenth=%f",Lenth);
     sprintf(exps_string[1],"Hight=%f",Hight);
     sprintf(exps_string[2],"Width=%d",Width);
         sprintf(exps_string[3],"H1=%f",H1);
         sprintf(exps_string[4],"R=%f",R);
         sprintf(exps_string[5],"L=%f",L);
     sprintf(exps_string[6],"thick_a=%f",thick_a);
         sprintf(exps_string[7],"thick_b=%f",thick_b);
     sprintf(exps_string[8],"thick_c=%f",thick_c);
         sprintf(exps_string[9],"thick_d=%f",thick_d);
         //更新模型
         for(int j=0;j<10;j++)
         {
                 UF_MODL_edit_exp(exps_string[j]);
             UF_MODL_update();
         }

     UF_terminate ();

    /* Callback acknowledged, terminate dialog             */
    /* It is STRONGLY recommended that you exit your       */
    /* callback with UF_UI_CB_EXIT_DIALOG in a ok callback.*/
    /* return ( UF_UI_CB_EXIT_DIALOG );                    */
    return (UF_UI_CB_EXIT_DIALOG);                           

}

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2024-12-22 13:21

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表