00202 00/12/01 05:43 | RE 00198 RE 00191 VC++のnmake.exeを秀 |
投稿者 : KojiMatsui | コメントを投稿する |
K.Matsuiです。 ご回答誠に有難うございます。 Ms.きいろいまふらあ wrote in hidesoft.7:00199|. > directory というのは、「今開いているファイルの格納されている > ディレクトリ」を表す予約語です。 > c:\hogehoge\mogemoge.cppというファイルを開いているときには、 > directory は "c:\hogehoge" という文字列を返します。 分かりました。そうするとdirectoryのままでいいんですね。 で、"\\Makefile\""の箇所なんですが Makefileはcppファイルと同フォルダに在るdspという拡張子のファイルを使用しま す。 で、ファイル名は mogemoge.cppと同名で mogemoge.dsp となっています。 このような場合、"\\Makefile\""の箇所は何と記述すればいいのでしょうか? _____________________________________ Koji.Matsui@mb2.seikyou.ne.jp _____________________________________ |
00203 00/12/01 11:53 | RE:00202 RE 00198 RE 00191 VC++のnmake |
投稿者 : ひろ | コメントを投稿する |
KojiMatsui さん今日は、ひろです。 > このような場合、"\\Makefile\""の箇所は何と記述すればいいのでしょうか? "\\mogemoge.dsp\"" にすればよいと思います。 |
00204 00/12/01 13:34 | RE:00203 RE 00198 RE 00191 VC++のnmake |
投稿者 : きいろいまふらあ | コメントを投稿する |
KojiMatsuiさん、ひろさんこんにちは。 >> このような場合、"\\Makefile\""の箇所は何と記述すればいいのでしょうか? >"\\mogemoge.dsp\"" >にすればよいと思います。 *.cppの*の部分を取り出さなきゃいかん、て話ですね。 //ねんのためいま開いているファイルの拡張子を… if(rightstr(basename,4)!=".cpp"){ message "拡張子がcppでないので終了"; endmacro; } //…とチェックした上で… $mybasename = leftstr(basename,strlen(basename)-4) + ".dsp"; //…とdspファイルの名前を作って… run "\"D:\\Prog(中略)\Bin\\nmake.exe\" \"" + directory + "\\" + $mybasename + "\""; //…としたらよいでしょう。 おためし下さい。 あと、directoryですが、ルートディレクトリの場合、 末尾に「\」がついてるらしいです。念のため。 c:\hoge\moge.txt の directory→「c:\hoge」 c:\moge.txt の directory→「c:\」 |
00205 00/12/01 19:50 | RE 00203 RE 00198 RE 00191 VC++のnmake |
投稿者 : KojiMatsui | コメントを投稿する |
K.Matsuiです。 ご回答ありがとうございます。 Mr.ひろ wrote in hidesoft.7:00203|. >> このような場合、"\\Makefile\""の箇所は何と記述すればいいのでしょうか? > "\\mogemoge.dsp\"" > にすればよいと思います。 でもこれだと各ファイルに対し、macファイルを毎回作成しないといけませんよね。 Ms.きいろいまふらあ wrote in hidesoft.7:00204|. > *.cppの*の部分を取り出さなきゃいかん、て話ですね。 > file://ねんのためいま開いているファイルの拡張子を… > if(rightstr(basename,4)!=".cpp"){ > message "拡張子がcppでないので終了"; > endmacro; > } > file://…とチェックした上で… > $mybasename = leftstr(basename,strlen(basename)-4) + ".dsp"; > file://…とdspファイルの名前を作って… > run "\"D:\\Prog(中略)\Bin\\nmake.exe\" \"" > + directory + "\\" + $mybasename + "\""; > file://…としたらよいでしょう。 > おためし下さい。 早速、D:\Program Files\Hidemaru\macros\VisualC.macに if(rightstr(basename,4)!=".cpp"){ message "拡張子がcppでないので終了"; endmacro; } $mybasename = leftstr(basename,strlen(basename)-4) + ".dsp"; run "\"D:\\Prog(中略)\Bin\\nmake.exe\" \"" + directory + "\\" + $mybasename + "\""; とコーディングして D:\Program File\MicrosoftVisual Studio\MyProjects\hogehoge\mogemoge.cppを開 いて [F10]を押してみましたが(ちゃんとdspファイルもそのフォルダに有ります) 何の変化もありません。何うして反応が無いのでしょうか? _____________________________________ Koji.Matsui@mb2.seikyou.ne.jp _____________________________________ |
00206 00/12/01 23:21 | RE:00205 RE 00198 RE 00191 VC++のnmake |
投稿者 : きいろいまふらあ | コメントを投稿する |
KojiMatsuiさんこんにちは。 確認1 >run "\"D:\\Prog(中略)\Bin\\nmake.exe\" \"" ここの「(中略)」は元にもどしました? #勝手に中略しておいてこの言い草もないですが。(^^; 確認2 >[F10]を押してみましたが(ちゃんとdspファイルもそのフォルダに有ります) [F10]を押すと、このマクロが走る様に設定されているのですか? テスト用のマクロです。 実際にはnmake.exeは実行せず、かわりに、新しい秀丸を開いて、 runにわたすコマンドを表示します。 このマクロを走らせるとどうなるでしょう? message "とりあえずマクロは走ってます"; if(rightstr(basename,4)!=".cpp"){ message "拡張子がcppでないので終了"; endmacro; } $dsp = leftstr(filename,strlen(filename)-4) + ".dsp"; if(!existfile($dsp)){ message $dsp + "は存在しません"; endmacro; } $exec = "D:\\Program Files\\Microsoft Visual Studio" + "\\VC98\Bin\\nmake.exe"; if(!existfile($exec)){ message $exec + "は存在しません"; endmacro; } $mycommand = "\"" + $exec + "\" \"" + $dsp + "\""; newfile; insert $mycommand; endmacro; |
新規に投稿する |