//************************************************************************** //Skeleton of trload.dll(ワークデータ読み込み) //************************************************************************** // #include #include #include #include #include //外部参照(DLL)関数の定義 #ifdef __cplusplus //この分岐宣言はC言語(*.C)としてコンパイルする時は省略可 extern "C" { #endif __declspec(dllexport) void TRLOADSUFFIX(char*); __declspec(dllexport) void TRLOADINIT(int*); __declspec(dllexport) void TRLOADKIND(int*,char*); __declspec(dllexport) void TRLOADPARAMETER(int*); __declspec(dllexport) void TRLOADSTARTPOINT(int*,double*); __declspec(dllexport) void TRLOADGETWORKSIZE(char*,double*,double*,double*); __declspec(dllexport) void TRLOADLOADWORK(char*,double*,int*,int*,float*, unsigned char*,int*); __declspec(dllexport) void TRLOADFREE(); #ifdef __cplusplus //この分岐宣言はC言語(*.C)としてコンパイルする時は省略可 } #endif //もしTRLOADPARAMETER などでダイアログを表示する場合は、以下のDllMain関数で //インスタンスをグローバル変数(hInst)に保存しておいて下さい。それ以外はDllMain関数は、 //不要です。 HINSTANCE hInst; BOOL WINAPI DllMain(HINSTANCE hinstDll,DWORD fdwReason,LPVOID lpvReserved) { hInst=hinstDll; return TRUE; } //本DLL内でのグローバル変数を定義 // //DLL内でローカルに使用する関数を記述 //(これらの関数を後ろのほうで記述する場合や、別ファイルで記述する場合は、 //それらの関数のプロトタイプ宣言を記述) // //************************************************************************** //外部参照(DLL)関数の引数説明 //[I -] 入力のみ(関数内では参照するだけにして下さい) //[- O] 出力のみ(参照時は未定義になっています。必ず値を返して下さい。) //[I O] 入出力 // // //====================================================================== void TRLOADSUFFIX(char *suffix) //[- O] 拡張子文字(DMF,STL,DME以外を指定) //複数指定する場合は";"で区切って下さい // 機能:対象ファイルの拡張子の定義 // 説明:TRYCUT起動直後の、引数解析処理前に参照されます。 // 本関数は必ず用意して下さい。 { strcpy(suffix,".???"); } //====================================================================== void TRLOADINIT(int *irc) //[- O] Return Code(=0:FALSE =1:TRUE) // 機能:処理の初期化 // 説明:TRYCUT起動時のWM_CREATE時に一度だけ参照されます。 // 作業エリアの確保などに利用しますが、特に必要ない場合は、 // 本関数自体の省略も可です。 // 初期化が正常な場合は、*irc は必ずTRUEを設定して下さい。 // 本関数省略時は、*irc=TRUE とみなします。 // *irc=FALSEで返した場合DLLは動作しませんので、各種プロテクト処理は、 // ここで行なって下さい。 { *irc=TRUE; } //====================================================================== void TRLOADKIND(int *lang, //[I -] =0 標準時 =1 他言語時 char *item) //[- O] 項目名 // 機能:ファイルダイアログ内の種類の項目名定義 // 説明:TRYCUT起動時のWM_CREATE時に一度だけ参照されます。 // 本関数は省略不可です。 { if( *lang ) { strcpy(item,"???????(*.???)"); //他言語モード(TRYCUT.MESインストール) } else { strcpy(item,"???????(*.???)"); //標準(日本語)モード } } //====================================================================== void TRLOADPARAMETER(int *irc) //[- O] Return Code // 機能:処理パラメータの設定 // 説明:ファイルダイアログで対象ファイルを選択後「OK」を指示 // したタイミングで参照されます。 // 処理に関連するパラメータを設定するI/Fで、ダイアログ // などを表示する処理などに利用して下さい。 // 正常な場合は、*irc は必ずTRUEを設定して下さい。 // 本関数自体は省略可で、その場合*irc=TRUE とみなします。 { *irc=TRUE; } //====================================================================== void TRLOADSTARTPOINT(int *type, //[- O] スタート点指定タイプ // =0:XY最小Z最大位置 // =1:現在の位置