ディクレ サポートBBS
DicreBBS

ディクレ サポートBBS



TCARD for Windows

トピック一覧に戻る

TCARDのSendTo登録

1 2016/11/29 18:26:39
新城博 TCARDをSendToへ登録してエクスプローラーから
CSV Fileを右クリックで起動したいのですが、
TCARDは起動するのですが、目的のFileが起動せず
何も開かない状態のTCARDになってしまいます。
他のソフトではこういうことはありません。
ヘルプを見ても「コマンドのオプション」など記載がありません。
どこが問題なのかアドバイスしてください。
2 2016/11/29 18:47:13
ディクレ古原 こちらで試したところ、読み込めるようです。単純にインストールしたフォルダのTCARD32.exeのショートカットをSend toに登録して試しました。

なお起動時にシェアウェアの画面が出る状況では読み込まない可能性があります。
3 2016/11/29 20:43:10
新城博 回答ありがとうございます。

小生が使っているWindowsはver.8.1です。
TCARDをインストールした時に出来たスタートメニューにあるTCARD32.exeのショートカットを「SendTo」へコピーしたのですが駄目です。
試しに、Program Files (x86)からショートカットを作り(ただし、そのフォルダに登録できないのでデスクトップに登録される)それを「SendTo」へコピーした(登録済みとは名前を変えた)のですが同じく駄目です。

ちなみに「SendTo」にあるショートカットのプロパティ(両方共)は「\"C:\\Program Files (x86)\\TCARD\\TCARD32.EXE\"」です。
どこが問題なのか全くわかりません!?
4 2016/11/29 22:57:50
ディクレ古原 こちらで試した環境はWindows10でしたので違いがあるかもしれません。

ショートカットのプロパティはこちらも同じです。

念のため、TCARDを一度「管理者として実行」を行ってみてください。
5 2016/11/30 01:07:33
新城博 「SendTo」にあるショートカットを「管理者として実行」のマークをして試しましたが駄目でした。

また試験的に、エクスプローラーのCSV.Fileを右クリックして、「プログラムから開く」→
「既定のプログラムの選択」でTCARDを選び関連付けをしました。
それからファイルを起動しましたが、目的のファイルは開きません。
開いたのはエラーダイアログで、「プログラムにコマンドを送信しているときに、エラーが発生しました。」と表示しました。
よって、「関連づけ」をもとのプログラム(Cassava Editor)に戻しました。このアプリでは問題なく開きます。

いろいろ調べて、TCARDのオプションメニュー(しかもCSVファイルを開かない状態だけ)
で「関連づけ」が出来ることがわかりました。しかし不思議なことにこのすべてをマークしても
ファイルの「関連づけ」はできませんでした。

いよいよ最終手段のTCARDのアンインストールをして、再インストールをしました。
もちろん正式購入ですから、きちんとパスワード登録もしました。そして、前回と同じ手順でショートカットを「SendTo」へ登録しました。

結果は一時的だけ「成功」です!!
その理由は登録して、4~5回は確かに目的のファイルが開きます。
しかし、他の通常作業(インターネット検索やエクセル作業)をして、
もう一度同じCSVファイルを起動すると目的のファイルは開かずTCARDだけが開きます。

理由はわかりませんが、レジストリー登録に何らかの理由で不具合が発生するか、
何かのコマンドが強制的に書き換えられるとしか思えません。

何か解決方法はないでしょうか?
ちなみに、「ESET」というセキュリティソフトを一時停止ても駄目でした。
TCARDアプリケーションに何らかの不具合が存在してなければ良いのですが?!
6 2016/11/30 01:37:58
ディクレ古原 SendToは関連づけではなく単に引数として渡されたファイルをTCARDで開いているだけです。
こちらでは関連づけしていないファイルもSendToで普通に開くことができます。
よってレジストリのコマンドは関係ありません。
7 2016/11/30 01:43:51
ディクレ古原 ただしTCARDでは既に起動しているときのファイル名引き渡しにレジストリ書き込みを利用しています。おそらくこれがうまくいってないないと思われます。レジストリに書き込む権限の問題かもしれません。

解決策としては、まずTCARDの[オプション]-[設定]の「動作」に「複数起動しない」のチェックを外してみてください。

あるいはTCARDを管理者権限で起動するようにしてみてください。
8 2016/11/30 10:00:33
新城博 ①「SendTo」のショートカットから目的のファイルを開く。という動作に関して分かってきました。

②結論から先です。「TCARD32.EXEを管理者権限で起動・普通に起動」に関係なく、TCARDを先に起動しておく。その後①の動作をするとファイルがきちんと開きます。
③TCARDを起動しないで①の動作をすると、「TCARD32.EXEを管理者権限で起動・普通に起動」に関係なく目的のファイルは開きません。
④これは「オプション」で「複数起動しない」のチェックを入れても外しても同じ結果になります。
⑤このことから、指摘した「既に起動しているときのファイル名引き渡しにレジストリ書き込みを利用しています」と関係していると思われます。
⑥どうしてTCARDを先に起動しないと目的のファイルが開かないかは、レジストリの変化を調べたら解決出来ないでしょうか?
⑦小生ではレジストリのどの項目が「レジストリ書き込みを利用」か分かりません。
⑧この項目を教えることは出来ないでしょうか?もちろんレジストリの操作は小生の自己責任です。
⑨項目がわかれば、レジストリの変化を「動作の前」・「動作の後」で記録して報告できます。
⑩この結果で解決の糸口が見つかるのではと考えるのですが?
9 2016/11/30 10:10:13
ディクレ古原 こちらでは起動しておかなくてもSendToは正常に機能しています。

レジストリの項目は
HKEY_CURRENT_USER\\Software\\DigitalCreator\\TCARD for Windows\\System
のCommandLine です。

ただしこれを使うのは、「複数起動しない」のチェックを入れているときのみですので、外しても起動しないのであれば関係無いと思われます。

チェックを入れていない、すなわち「複数起動する」状態であるときに、ちゃんとTCARDが複数起動しているでしょうか?

つまり、送るを複数行うとTCARDが別々に2つ起動します。


10 2016/11/30 12:29:55
新城博 #8コメントに間違いがありました。
④「複数起動しない」のチェックを入れても外しても同じ結果と述べたのは間違いです。
[A]チェックを入れた場合には目的のファイルがきちんと開きます。(ただしTCARDを先に起動しておく)
[B]チェックを入れない場合には目的のファイルは開きません。しかし、空のTCARDが別に起動します。(複数起動)。

ここで、[A]の場合ファイルを開けたときのレジストリCommandLineの表記は下記のとおりです。
種類:REG_SZ, データ:目的ファイルのフルアドレス(目的ファイルを変えると、この項目は次に開けたファイルに変わります)

[B]の場合は、レジストリCommandLineの表記が[A]で開けたファイルのままです。目的のファイルが開かないので当然ですが?
さらに別のファイルを開いても空のTCARDが新しく起動するだけで、変化しません。レジストリも変化しません。

小生は参考書を読んで、レジストリを編集する程度の知識しかありません。
上記の報告で解決出来る糸口はあるでしょうか?

ほかのアプリケーションとの競合が考えられるでしょうか?
11 2016/11/30 12:39:17
ディクレ古原 9に書きましたように「複数起動しない」にチェックを入れているときにしかレジストリを使用しません。つまりBの場合レジストリを変更しませんので、正常な動作です。

これで確認できたことはむしろレジストリを経由したファイルを開く動作はうまく行っている、ということです。逆にレジストリを使わないでファイルを開く場合(Aの一回目やB)の場合にうまくいっていません。

確認ですが、レジストリCommandLineに開いたファイルのパスがあると思いますが、そのパスに空白は含まれるでしょうか? 含まれる場合、パスは””で囲まれているでしょうか?
12 2016/11/30 13:11:32
新城博 [Q]確認ですが、レジストリCommandLineに開いたファイルのパスがあると思いますが、そのパスに空白は含まれるでしょうか?
[A]パスに空白は含まれないので\"\"はありません。

[Q]含まれる場合、パスは””で囲まれているでしょうか?
[A]試しに空白があるフォルダにコピーして、そのファイルを開いた場合には、レジストリでもちゃんと\"フルアドレス\"となります。
ただし、同じ「Syste」内に「IniFile」という項目(CommandLineと同じファイルが表示される)があり、そのフルアドレスには\"\"がありません?

通常アプリケーションフォルダ内にINIファイルが存在しますが、TCARDフォルダにはありません。INIファイルは存在しないのでしょうか?
13 2016/11/30 13:26:34
ディクレ古原 空白のパスの問題では無さそうですね。

TCARDではINIファイルは存在しません。レジストリを使用します。

確認用のTCARD32.exを作成してみました。起動時にコマンドラインから渡されたファイル名を表示します。これをインストールしてTCARDを起動していない状態で「送る」を行ってみてください。正常ならファイルのパスが出るはずです。

http://www.dicre.com/soft/download/tcrdx779d1.exe

14 2016/11/30 13:45:27
新城博 この「tcrdx779d1.exe」はインストール用のEXEファイルですよね。
ということは、今までのTCARDをアンインストールしてから新しくこの「tcrdx779d1.exe」を実行するのですか?
それとも「旧TCARD」をそのままにして実行してよいのでしょうか?

アドバイスをお願いします。
15 2016/11/30 13:48:21
ディクレ古原 どちらでもかまいませんが、今までのTCARDに上書きすると簡単に「送る」で再現できると思います。

ただし、その場合、起動時に毎回ファイル名のメッセージが出てきますので、それを避けるためにはまた正規版を別途上書きして元に戻す必要があります。

別の場所にインストールするとそれは避けられますが、SendToのショートカットはそれを開くように別途作らなくてはなりません。
16 2016/11/30 15:08:39
新城博 結果をわかりやすく番号の組み合わせで報告します。(なお、新TCARDはTCARD32d1フォルダにインストールしました)

(1)「旧TCARD=TCARD32.EXE」を先に起動しておく。
(2)「新TCARD=TCARD32d1.EXE」(*実際はTCARD32.EXE)を先に起動しておく。
(3)「旧TCARD=TCARD32.EXE」を先に起動しない。
(4)「新TCARD=TCARD32d1.EXE」*実際はTCARD32.EXEを先に起動しない。
(5)「オプション」→「設定」→「動作の設定」→「複数起動しない」→マークする(複数起動不可)
(6)「オプション」→「設定」→「動作の設定」→「複数起動しない」→マークしない(複数起動可)

(1)+(5):目的ファイルが開く。
(1)+(6):目的ファイルは開かない。

(3)+(5):空の旧TCARDだけが開く。
(3)+(6):空の旧TCARDだけが開く。

(2)+(5):ファイルのフルパスのダイアログが出る(空白部分がある場合には″″で表示)。「OK」を押す。目的ファイルが開く。
(2)+(6):ファイルのフルパスのダイアログが出る(空白部分がある場合には″″で表示)。「OK」を押す。目的ファイルは開かず空の新TCARDだけが開く。

(4)+(5):ファイルのフルパスのダイアログが出る(空白部分がある場合には″″で表示)。「OK」を押す。目的ファイルが開かず空の新TCARDだけが開く。
(4)+(6):ファイルのフルパスのダイアログが出る(空白部分がある場合には″″で表示)。「OK」を押す。目的ファイルは開かず空の新TCARDだけが開く。

なお、レジストリの変化はすべての組み合わせで前回と全く同じです。
この結果でなにか分かるのでしょうか?
17 2016/11/30 16:06:20
ディクレ古原 ファイルのフルパスのダイアログが出ているにも関わらず開いていないのがおかしいですね。

試しにメニューの[オプション]-[設定]の「ファイルの設定」で「起動時のファイル」が「前回のファイル」になっていると思いますが、これを「何も開かない」にしてみてください。

そして、TCARDが起動していない状態で「送る」を行ってみてください。
18 2016/11/30 17:52:07
新城博 どうやら小生が一番最初にインストールした時に「何も開かない」に設定し直したのが原因だったようです?!

「オプション」→「設定」→「ファイルの設定」→「前回のファイル」または「新規データーベース作成」に設定したら、
先にTCARDを起動しなくても目的ファイルが開くようになりました。

小生はアプリケーションをインストールしたら、直ぐにオプション設定をします。
TCARDの場合にも「オプション」→「設定」→「ファイルの設定」→「何も開かない」に設定しました。

理由は2つあります。(a)ショートカットをタスクバーに登録して直接起動する場合と、
(b)エクスプローラーから目的ファイルを直接開く場合があるからです。

しかし、どうして「オプション」で「何も開かない」にすると「SendTo」では開かないのでしょうか?

「SendTo」からの強制起動は本体設定に関係なく目的ファイルが開くのではないでしょうか?

他のアプリケーションでは、EXEファイル(ショートカット)を直接開いた場合と「SendTo」での目的ファイル起動は別動作をしますが・・・?

もし、「前回のファイル」に設定しないと「SendTo」から目的ファイルが開けないとしたら不便になります。
というのは、(a)の直接EXEファイルを起動したときに「前回のファイル」を一旦終了しなければならないからです。

他のアプリと同じように、EXEファイル(ショートカット)直接起動は「何も開かない」で、「SendTo」からでは目的ファイルが開けるに出来ませんか?

どうしても駄目なら設定を「前回のファイル」にして終了するか、「新規データーベース作成」にして出て来るダイアログを終了させるしかありませんが・・・!
19 2016/11/30 18:03:04
ディクレ古原 なるほど、「何も開かない」場合に開かないわけですね。対策をしてみましたのでこれを試してみてください。

http://www.dicre.com/soft/download/tcrdx779d2.exe
20 2016/11/30 18:32:58
新城博 どうもありがとうございます。

しかしながら、なぜか#19のtcrdx779d2.exeがダウンロードできません。

何度やってもエラーダイアログで「ダウンロードできません」と表示されます。

前回のtcrdx779d1.exeは問題なくダウンロード出来たのですが・・・?!

もしかして、ファイルが正確にアップロード出来てない可能性はありませんか?
21 2016/11/30 18:33:54
ディクレ古原 すみません、再アップしてみました。どうでしょうか?
22 2016/11/30 20:43:22
新城博 小生の個人的趣味だけで、EXEファイルを2度まで改造させてしまいました。
本当にすみませんでした。そして、本当に有難うございました。

これで完全に小生のストレスが解消されました。
そしてアプリを使いこなすのが、制作された方への恩返しだと思っています。
たくさん使って、気づいたことがあればまたコメントさせてください。

ありがとうございました。

コメントの書き込み

Dicre Webアカウントを取得した方のみがコメントの書き込み可能です。既に取得済みの方は左上よりログインしてください。取得がまだの方はこちら