営業とは、顧客の創造と保持を目指して、顧客に対して魅力ある提案をし、顧客に満足を与えるためのコミュニケーション活動である。
営業の知識 には、営業の本当の仕事が書かれています。
セールスパーソン必読の一冊。
営業とは、顧客の創造と保持を目指して、顧客に対して魅力ある提案をし、顧客に満足を与えるためのコミュニケーション活動である。
営業の知識 には、営業の本当の仕事が書かれています。
セールスパーソン必読の一冊。
色情報のあるビットマップを、モノクロ(2値)ビットマップに変換して、ビットマップファイルを保存できる、SaveMonoBitmapメソッドを作成しました。
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using System.Drawing.Imaging;
public static void SaveMonoBitmap(Bitmap bmpColor, string strSaveBitmapPath)
{
Bitmap bmpMono = Get1bppIndexedImage(bmpColor);
bmpMono.SetResolution(200, 200);
ImageCodecInfo imageCodecInfo;
imageCodecInfo = GetEncoderInfo("image/bmp");
EncoderParameters encoderParameters = new EncoderParameters(2);
encoderParameters.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.ColorDepth, 1L);
encoderParameters.Param[1] = new EncoderParameter(System.Drawing.Imaging.Encoder.Compression, (long)EncoderValue.CompressionCCITT4);
bmpMono.Save(strSaveBitmapPath, imageCodecInfo, encoderParameters);
}
private static Bitmap Get1bppIndexedImage(Bitmap bmp)
{
Bitmap monoBmp = new Bitmap(bmp.Width, bmp.Height, PixelFormat.Format1bppIndexed);
BitmapData data = monoBmp.LockBits(
new Rectangle(0, 0, monoBmp.Width, monoBmp.Height), ImageLockMode.ReadWrite, PixelFormat.Format1bppIndexed);
for (int x = 0; x < bmp.Width; x++)
{
for (int y = 0; y < bmp.Height; y++)
{
if (bmp.GetPixel(x, y).GetBrightness() > 0.5)
SetIndexedPixel(x, y, data, true);
else
SetIndexedPixel(x, y, data, false);
}
}
monoBmp.UnlockBits(data);
return monoBmp;
}
private static unsafe void SetIndexedPixel(int x, int y, BitmapData bmd, bool pixel)
{
byte* p = (byte*)bmd.Scan0.ToPointer();
int index = y * bmd.Stride + (x >> 3);
byte mask = (byte)(0x80 >> (x & 0x7));
if (pixel)
p[index] |= mask;
else
p[index] &= (byte)(mask ^ 0xff);
}
private static ImageCodecInfo GetEncoderInfo(string mineType)
{
ImageCodecInfo[] encs = ImageCodecInfo.GetImageEncoders();
foreach (System.Drawing.Imaging.ImageCodecInfo enc in encs)
if (enc.MimeType == mineType)
return enc;
return null;
}
SaveMonoBitmapメソッドはこの形で利用できます。
Bitmap bmpColor = new Bitmap("c:\test.bmp");
SaveMonoBitmap(bmpColor, "c:\mono.bmp");
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Reflection;
using System.Windows.Forms;
public bool isWebEnable(string strURL)
{
try
{
Uri siteUri = new Uri(strURL);
WebRequest wr = WebRequest.Create(siteUri);
wr.Timeout = 10000;
WebResponse myResponse = wr.GetResponse();
myResponse.Close();
return true;
}
catch (WebException ex)
{
string ERRMSG = ex.Message + "\r\n\r\n URL:" + strURL;
MessageBox.Show(ERRMSG, "WEB接続エラー"
, MessageBoxButtons.OK, MessageBoxIcon.Warning);
return false;
}
catch (Exception ex)
{
throw ex;
}
}
1、本番リリース前々日から前日にかけて、リリースのリハーサルを繰り返す。
・本番DBサーバーから最新DBダンプを取得し、ステージング(総合試験環境)へ展開。
・本番リリース担当者が、ステージング環境へのリリースと動作確認を繰り返し、習熟度を高める。
・リリースタイムテーブルを作成し、関係者へのアナウンスと承認を得る。
・リリース時のチェック項目を、一覧で作成する。
2、本番稼働中にバックアップ可能なものは、本番稼働中にリリース前の状態をバックアップしておく。
・本運用中のモジュールを、フォルダ毎バックアップフォルダへコピーする。
・バックアックしたフォルダには、年月日(YYYYMMDD)を付加しておきます。
3、本番稼働中に展開モジュールを準備する。
バックアックしたフォルダを複製し、リリースモジュールで上書きする事で、リリース実施時には
フォルダ入れ替えで済むようにしておく事で、リリース実施作業時間を短縮する。
4、本番環境の使用を禁止する。
・全クライアントPC
・サーバ
5、本番リリース直前のDBをバックアップする。
・DBの最新ダンプを出力し、バックアップフォルダへコピー。
・ダンプファイルには、年月日時分(YYYYMMDDHHMM)を付加しておきます。
6、展開モジュールを本番リリース。
・全クライアントPCへ展開モジュールをリリース。
・DBサーバへ展開モジュールをリリース。
・WEBサーバへ展開モジュールをリリース。
・キャッシュファイルを全て削除。
・WEBサーバを再起動。
7、リリース内容再確認。
リリース時のチェック項目を元に、作業漏れが起きていないかチェックする。
8、リリース後、本番動作確認。
ログイン、画面遷移レベルで、本番環境の動作確認。
9、本番環境が復帰した事を関係者へ周知。
・開発責任者と開発スタッフ
・業務責任者と業務スタッフ
10、本番環境を運用試験環境へ展開。
本番リリース後、安定稼働が確認できたら、本番環境を運用試験環境へ展開する。
必要であれば、総合試験環境、結合試験環境へも展開する。
最近のコメント