ページ 11

初心者です、困っています

Posted: 2013年7月01日(月) 23:13
by muka
初めて質問させていただきます。
困っているのでお力を貸していただきたいです。
質問文のテンプレートをお借りしたので以下が質問の内容です。

[1] 質問文
 [1.1] 自分が今行いたい事は何か
ライブラリでsoftolk.exeを開いて、格納した文字を読み上げさせたいです
 [1.2] どのように取り組んだか(プログラムコードがある場合記載)

コード:

void load_letter_fanc(){
//letter.txtファイルに格納した文字列を取得し,配列に格納する
	static int j=0;
	static int fll1=0;
	int StrLen,StrWidth;
	static int FileHandle;
	FileHandle=FileRead_open("letter.txt");
	fll=0;
	while(FileRead_eof(FileHandle)==0 && ProcessMessage()==0 ){
		j++;
		FileRead_gets(le[j],256,FileHandle);
		StrLen=strlen(le[j]);
		fll1= GetDrawStringWidthToHandle(le[j],StrLen,FontHandle1);
			if(fll<fll1){fll=fll1;}
		//DrawString(550,500+j*20,le[j],White);
	}
	character_num=j;
	FileRead_close(FileHandle);
}
 
 [1.3] どのようなエラーやトラブルで困っているか(エラーメッセージが解る場合は記載)
 [1.4] 今何がわからないのか、知りたいのか
コマンドプロンプトで実行するプログラムをどのように組み込んで、格納した文字を読ませたらいいのか分からないです。


[2] 環境  
 [2.1] OS : Windows xp
 [2.2] コンパイラ名 : VC++ 2010

[3] その他
C言語は授業で習った程度の知識です。

すいませんがよろしくお願いします。

Re: 初心者です、困っています

Posted: 2013年7月01日(月) 23:27
by みけCAT

コード:

WinExec("softalk.exe \"よませたいてきすと\"",SW_HIDE);
で出来ると思います。組み込むなら

コード:

char command[10000];
wsprintf(command,"softalk.exe \"%s\"",le[j]);
WinExec(command,SW_HIDE);
みたいな感じがいいでしょう。

softalk.exeへのパスは適切に設定してください。
例:C:¥SofTalkにsoftalk.exeがある場合

コード:

char command[10000];
char softalkPath[10000]="C:\\SofTalk\\softalk.exe"; /* ユーザーが設定できるように! */

wsprintf(command,"\"%s\" \"%s\"",softalkPath,le[j]);
WinExec(command,SW_HIDE);

初心者です、困っています

Posted: 2013年7月02日(火) 14:37
by muka
ありがとうございます。
御指導いただいたように実行したところ無事に動きました。