プロが教える店舗&オフィスのセキュリティ対策術

自宅で使うために(自営業のため)
タイムカードのようなシステムをC言語でこれから作ろうと思っているんですが、、、

実際に使う時に一発で実行画面を開く方法はありますか?
(このシステムを使うのはパソコンがほとんんどできない50代のおばさんなので。)

ちなみにC言語は初級程度しかできません。

A 回答 (6件)

C言語だけで超簡単実装するのであれば、


CUIのプログラムを組んであげて、デスクトップにショートカットをつくるのが簡単だと思います。

つくったプログラムを右クリックでDrag & Dropしてショートカット作成でよいと思います。
あとはクリックすればそれでOK

もし必要であれば、ショートカットキーをつくってもよいと思います。

リンク先 C:\local\timecard.exe Username
のようにして人ごとに、ショートカットを作るとよいとおもいます。

次に、プログラムですが。

int main(int argv,char* argc){
char c;
FILE* fp;
char filename[100];
strcpy(filename,argc[1]);
strcat(filename,".log");
/* 引数から、ユーザーごとの保存するファイル名を作成する。strcatでできると思います。ファイル名は、"ユーザー名.log"みたいな感じでユーザごとに分けるとよいと思います。*/


fp = fopen(filename,"a"); //ファイルを追記モードで開きます

printf("出勤(a)ですか?退勤(b)ですか?\n");
 scanf("%c",c);
if(c == 'a'){
printf("おはようございます\n");
fprintf(fp,
"IN,%d,%d,%d,%d,%d",
year,month,date,hour,min");
}
else if( c == 'b'){
printf("おつかれさまでした\n");
fprintf(fp,
"OUT,%d,%d,%d,%d,%d",
year,month,date,hour,min");
}
else
printf("出勤ですか?退勤ですか?");

 fclose(fp);
}

みたいな感じで組んであげて、締め日にexcelで、ユーザー名.logファイルを開いてあげて処理してあげればいいと思います。","でくぎると、勝手にセルを分けてくれます。
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございます。
一度やってみます!!

お礼日時:2006/09/28 11:24

> それと・・・多重クリック対策→mutexって何ですか?



(間違えて連続でクリックされてしまった場合など)
「出社」を同時に二回押されたり、
「出社」と「退社」を同時に押されたりした際の、
データの保護の話です。
同時に同じファイルにデータを書いたりすると危ないので、
順番に書くようにするとか、既に出社中なら出社はエラーにするとか、
そういう配慮です。(アクセス制御とか、排他制御などといわれます)

Mutexというのは、排他制御の方式/機能の名前です。
簡単に言えば、「使ってますよ」マーク?
何かする前にMutexをとって、使い終わったらMutexを解放する。
既にMutexが取られていたら使わない。そういうときに使います。

# 作る事に主眼がないなら、フリーソフトの方がいいですね。
    • good
    • 0
この回答へのお礼

なるほど!!
勉強になりました。
ありがとうございます。

お礼日時:2006/10/05 12:01

No.1の方が回答されていますが、C言語で画面を操作するのは大変です。

画面操作を行うC言語のライブラリソース(市販品)を修正したことありますが、うん万行という大きさで多大な労力と日数を費やしました。「C言語の学習」「アプリケーション作成の練習」が目的ならいいのですけど「自営業のため」というような実際の運用が目的なら、「簡単タイムカードforAccess2000」のようなフリーソフト等を使われることをお勧めします。(手段と目的を間違えないようにしましょう)
http://www.vector.co.jp/soft/dl/win95/business/s …

一発で開くのは、他の方も言われているように、デスクトップにショットカットを作ればOKですね。
    • good
    • 0
この回答へのお礼

フリーソフトがいっぱいあるんですね!!
知りませんでした。
ありがとうございます^^

お礼日時:2006/10/05 11:58

C初級とのことですし、基本のアイデアは#2の方のように、


ショートカットでもよさそうに思いますが、更に言えば、
aとかbとか入力させるのも危ないような気が。
>パソコンがろくにできない50代。

デスクトップに「出社」「退社」のショートカットを別につくり、別プログラムにするのがよいと思います。


# 多重クリック(ミス操作)等の対策(Mutex等)も忘れずに。
    • good
    • 0
この回答へのお礼

なるほど!!
良いですね♪


それと・・・多重クリック対策→mutexって何ですか?
わかりません><
自分でも調べてみますが。

お礼日時:2006/09/28 11:28

ミステイク


scanf("%c",&c");
でしたね。

この回答への補足

scanf("%c",&c);
じゃないですか・・・?

補足日時:2006/09/28 11:25
    • good
    • 0

Cで画面を操作するプログラムを作るのは非常に大変です。

Execl(VBA)又はVB.NET等で作成する方が非常に簡単です。C言語でなく、VBA,VB.NETを検討されてはいかがでしょうか。
    • good
    • 0
この回答へのお礼

そうですね。
excelで作るのを検討してみます。

お礼日時:2006/09/28 11:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!