http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1251572732
が参考になりました。
Form1で Form2のインスタンスを作成したら 親フォーム情報を子フォームに
通知するところがミソのようです。
あとは、子フォームで、親フォームを宣言しておけば、親フォームを扱うことが
できるようです。
Form1(親)側
Form2 f = new Form2();
f.form1obj = this;
f.Show();
Form2(子)側
public Form1 form1obj;
textBox1.Text= form1obj.listView1.Items[comboBox1.SelectedIndex].SubItems[0].Text;
あと、当然Form1側のコントロールのModifiersはpublicにしておきます。
2017年2月21日火曜日
2017年1月29日日曜日
Ubuntuをアップデートしたら、400エラーが出るようになる
結論から言うと、原因はJSPの中のjavascriptで、HTMLリクエストパラメータを全角文字などもそのまま送信していたのが原因でした。
これまで、全角文字もそのまま送信していて問題はおきなかったのは、ブラウザ側あるいはtomcat?でうまく処理していてくれたためと思う。
tomcatあるいはjavaあたりをアップデートした影響で、URLエンコードしてない影響がIE11にだけ現れたようだ。このへんの関係を発見するまで時間がかかった。
400エラーが出るのは、IE11だけである。chromeやEdgeでは特に問題は起こってない。
encodeURIにより、URLエンコードするだけで問題が解決した。デコードはとくにしなくても、だいじょうぶなようだ。ネットで検索しても、こういった症状が出てこなかったのは、基本的ミスだったからともいえる。
***************解決までの流れ
①Ubuntuサーバで、突然、IE11を使ったとき、全角のファイル名のときだけ、ダウンロードできなくなる。400エラーが出る。
②Vmware内の古いUbuntuサーバについては問題ない。試しにapt-get update
すると、同じ症状が出る。原因はtomcatかjavaの影響?IE11との相性?いずれか、と考えた。
ネットでは、IE11のUserAgentの文字がTridentに変わったことが、出ていたので対応させてみた。
でも、これとは無関係だった。しばらく解決策がみつからない。
③他のリクエストパラメータを使うGETのところで、同じ症状(400エラー)が出ることを発見。
④③よりひょっとして、URLエンコードしていないのが原因でないかと疑う。試しにエンコードするように修正したら解決した。
※原因を見つけるには、試行錯誤しながら、考えるしかないようだ。
これまで、全角文字もそのまま送信していて問題はおきなかったのは、ブラウザ側あるいはtomcat?でうまく処理していてくれたためと思う。
tomcatあるいはjavaあたりをアップデートした影響で、URLエンコードしてない影響がIE11にだけ現れたようだ。このへんの関係を発見するまで時間がかかった。
400エラーが出るのは、IE11だけである。chromeやEdgeでは特に問題は起こってない。
encodeURIにより、URLエンコードするだけで問題が解決した。デコードはとくにしなくても、だいじょうぶなようだ。ネットで検索しても、こういった症状が出てこなかったのは、基本的ミスだったからともいえる。
***************解決までの流れ
①Ubuntuサーバで、突然、IE11を使ったとき、全角のファイル名のときだけ、ダウンロードできなくなる。400エラーが出る。
②Vmware内の古いUbuntuサーバについては問題ない。試しにapt-get update
すると、同じ症状が出る。原因はtomcatかjavaの影響?IE11との相性?いずれか、と考えた。
ネットでは、IE11のUserAgentの文字がTridentに変わったことが、出ていたので対応させてみた。
でも、これとは無関係だった。しばらく解決策がみつからない。
③他のリクエストパラメータを使うGETのところで、同じ症状(400エラー)が出ることを発見。
④③よりひょっとして、URLエンコードしていないのが原因でないかと疑う。試しにエンコードするように修正したら解決した。
※原因を見つけるには、試行錯誤しながら、考えるしかないようだ。
2017年1月24日火曜日
ポップアップ アラームを職場で
職場でPCにソフトをインストールするのはいろいろ制限もあるので
インストール無しで ポップアップアラームを使う方法を調べてみた。
VBSスクリプトを使う方法があり、参考になりました。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11134557286
タスクスケジューラで、起動するようにしておけばOkです。
ただ、他のソフトを使用中でも、最前面にポップアップ画面を出したいので
インストール無しで ポップアップアラームを使う方法を調べてみた。
VBSスクリプトを使う方法があり、参考になりました。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11134557286
タスクスケジューラで、起動するようにしておけばOkです。
ただ、他のソフトを使用中でも、最前面にポップアップ画面を出したいので
MsgBox "○○の時間です",vbSystemModal,"タスクスケジューラ"
のようにするといいようです。
あとは、タスクスケジューラの時刻設定の手間は若干ありますが、許容範囲かと。
いくつか、よくつかうvbsスクリプトを登録しておいて、時刻だけ書き換えて使いまわせばOkでしょう。
2017年1月21日土曜日
netcommons3
netcommons3を入れてみた。
phpの設定では
C:\xampp\htdocs\NetCommons3\app\Console\cake.batの中では
C:\xampp\php\php.exe -q "%lib%cake.php" -working "%CD% " %*
とする必要がある。
すでに入れてあるmsyql5.6を使おうとするが、なかなかうまくいかない。
sql_modeがSTRICT_TRANS_TABLESだと正常に動作しないということらしい。
一時的にset sql_mode="";コマンドで、空白にしてみる。
Mysqlのパスが、xamppとは違うので
C:\xampp\apache\conf\extra¥httpd-xampp.confの中で
SetEnv MYSQL_HOME "\\Program Files\\MySQL\\MySQL Server 5.6\\bin"
としてみたが、これでもだめ。
mysqlで
再度,
set session sql_mode="";
set global sql_mode="";
としてみたら、うまくインストールできた。(set session ~だけではだめで、set global ~でやっとうまくいく)
このへんは、ネットで見てもよくわからない。なぜか、my.iniの設定が反映されなかったため
このような試行錯誤状態になってしまった。CMSのインストールも、ちょっとしたバージョンのずれで、大変なようだ。
phpの設定では
C:\xampp\htdocs\NetCommons3\app\Console\cake.batの中では
C:\xampp\php\php.exe -q "%lib%cake.php" -working "%CD% " %*
とする必要がある。
すでに入れてあるmsyql5.6を使おうとするが、なかなかうまくいかない。
sql_modeがSTRICT_TRANS_TABLESだと正常に動作しないということらしい。
一時的にset sql_mode="";コマンドで、空白にしてみる。
Mysqlのパスが、xamppとは違うので
C:\xampp\apache\conf\extra¥httpd-xampp.confの中で
SetEnv MYSQL_HOME "\\Program Files\\MySQL\\MySQL Server 5.6\\bin"
としてみたが、これでもだめ。
mysqlで
再度,
set session sql_mode="";
set global sql_mode="";
としてみたら、うまくインストールできた。(set session ~だけではだめで、set global ~でやっとうまくいく)
このへんは、ネットで見てもよくわからない。なぜか、my.iniの設定が反映されなかったため
このような試行錯誤状態になってしまった。CMSのインストールも、ちょっとしたバージョンのずれで、大変なようだ。
2016年11月18日金曜日
LPICの学習
LPICの資格というのがある。ただ、検定料が高く、101から順に受けないといけないらしい。LPICのテキストはLinuxを使うためにはとても役に立つ。試験は受けないけれど、テキストで学習するだけで、十分役立つかなと思っている。
結果。。。なぜか、うまくいきませんでした。
原因を考えていますが、今のところ不明
こんなやり方は 邪道なのだろうか。。
スクリプトって、同期的に動いているのか 非同期なのか、そのへんも
関係しているんだろうか
素直に ひとつひとつ apt-get installするしかないようだ
早速、インストールのためのスクリプト作成で、役に立った。
(1)プロキシーの設定スクリプトをこんなふうに考えてみた
rm /etc/apt/apt.conf
echo -n "0:No proxy 1:proxy(NoAuth) 2:proxy(Auth):"
read yn
if [ $yn = "0" ]; then
:
else
cp apt_skt.conf /etc/apt/apt.conf
echo -n "input ip-address & port for proxy(e.g. 172.*.*.*:port):"
read iport
sed -i -e "s/userpass@ipport/$iport/g" /etc/apt/apt.conf
if [ $yn = "2" ]; then
echo -n "input userID & password for proxy(e.g. user:pass):"
read pwd
sed -i -e "s/$iport/$pwd@$iport/g" /etc/apt/apt.conf
fi
fi
(2)インストール失敗したら、再インストールするためのスクリプトを考えてみた
apt-get install samba mysql-server tomcat7
をUbuntu12.04でスクリプトで実行しようとしたけれど、どうもうまくいかない。14.04ではうまくいくようだけど、依存ライブラリが古いためいろいろひっかかるのかもしれない。数回繰り返すとなんとかなるようなので、
apt-get update --fix-missing
#*************reInstall*********
spath='/etc/samba'
tpath='/var/lib/tomcat7'
mpath='/etc/mysql'
while :
do
if [ ! -d $spath ]; then
apt-get install -y --fix-missing samba
else
break
fi
done
while :
do
if [ ! -d $tpath ]; then
apt-get install -y --fix-missing tomcat7
else
break
fi
done
while :
do
if [ ! -d $mpath ]; then
apt-get install -y --fix-missing mysql-server
else
break
fi
done
************
これでうまくいくと思ったが、なぜか、sambaがうまくインストールできない。
ディレクトリの有無でインストールのチェックというのはだめなようなので、プロセスをチェックするようにしてみた。
これで試してみようと思う。
while :
do
sc=$(ps -e | grep 'samba' | wc -l)
if [ $sc = "0" ]; then
apt-get install -y --fix-missing samba
else
break
fi
done
結果。。。なぜか、うまくいきませんでした。
原因を考えていますが、今のところ不明
こんなやり方は 邪道なのだろうか。。
スクリプトって、同期的に動いているのか 非同期なのか、そのへんも
関係しているんだろうか
素直に ひとつひとつ apt-get installするしかないようだ
2016年10月25日火曜日
指定したフォルダ以下のJPG画像データを一括して圧縮し、上書きするツール
共有フォルダに、必要以上に大きいサイズのJPGファイルが増えて、困っているとき、JPGを指定したサイズに圧縮できると便利です。
画像の一括圧縮は、以前は、Vixというツールで手動でやっていた作業です。
http://myutaro.blogspot.jp/2016/04/blog-post_20.html
これだと、その都度、設定が必要で、毎日、自動で行うことは難しいので、自作ツールを作ってみました。
毎日、タイムスケジューラで、起動して、少しずつ処理をすすめるソフトを作ってみました。
https://drive.google.com/file/d/0B4pVdxZ3b8JAX2Z6MGZGVHFoUk0/view?usp=sharing
Imagemagickのmogrify.exeというコマンドツール(GPL)を、ツールの中で利用させてもらっています。
一度に、いくつのフォルダを処理するか、横幅サイズの指定、どのフォルダ以下に指定するか
などを設定として保存できるようにしています。
画像の一括圧縮は、以前は、Vixというツールで手動でやっていた作業です。
http://myutaro.blogspot.jp/2016/04/blog-post_20.html
これだと、その都度、設定が必要で、毎日、自動で行うことは難しいので、自作ツールを作ってみました。
毎日、タイムスケジューラで、起動して、少しずつ処理をすすめるソフトを作ってみました。
https://drive.google.com/file/d/0B4pVdxZ3b8JAX2Z6MGZGVHFoUk0/view?usp=sharing
Imagemagickのmogrify.exeというコマンドツール(GPL)を、ツールの中で利用させてもらっています。
一度に、いくつのフォルダを処理するか、横幅サイズの指定、どのフォルダ以下に指定するか
などを設定として保存できるようにしています。
登録:
投稿 (Atom)