• ベストアンサー

Cドライブにわけのわからないテキスト

OSはXPホームです。 スタート→マイコンピュータ→ローカルディスクC ここにウインドウズフォルダやProgram Filesフォルダ等ありますよね。 ここによく意味不明なテキストドキュメントが勝手に作成されているんです。 今まで数回ありましたが、毎回テキストの名前や内容は違っていたと思います。 消しても、しばらくすると急にまた存在しています。 今回でたものは、 名前 ICSYSINF 内容 Function name : DllMain; ul_reason_for_call = DLL_PROCESS_ATTACH Function name : DllMain; ul_reason_for_call = DLL_PROCESS_DETACH こんなことが書かれています。 1度か2度ウイルスに感染してしまったようなので、 まだウイルスがいるかもしれないと思いまして気になっています。 一応ノートン2006で完全スキャンをしてますがウイルスは今はいません。 通常このようなテキストは勝手にローカルディスクCフォルダに作成されるんですか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#192177
noname#192177
回答No.2

スパイウェアの可能性が高いと思います。 ICSYSINFで検索するとそれらしいページが小数ですがヒットします。 http://www.spywaredata.com/spyware/malware/icsysinf.dll.php http://www.help2go.com/postt6237.html&view=previous 上のページでもまだ安全性が解析されていないようですし、Googleでヒットする件数が少ないことからも、あまりメジャーなものではないようです。スパイウェア対策ツールで除去できるかどうかはわかりません。 可能ならばリストアされることをおすすめします。

その他の回答 (1)

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

> 通常このようなテキストは勝手にローカルディスクCフォルダに作成されるんですか? プログラムの動作状況なんかを出力する際、確実にありそうな場所はC:\ですから…。 動作ログや作業用のファイルが作られる事はありえます。 あるいは、本来別の場所に出力する設定だったが、フォルダが削除されたなどで、代わりにC:\に出力しちゃってるとか。 何のプログラムが出力しているのか調べたいとかですと、 ICSYSINF のファイルの属性を書き込み禁止にすれば、次回に書き込みしようとした時、エラーで(場合によってはシステムごと)止まってくれるかも?

関連するQ&A

  • VisualStudio2005でのDLL作成

    開発環境 OS:WindowsXP SP2 SDK:VisualStudio2005 StandardEdition 言語:VC++ Win32コンソールアプリケーションのDLLを選択 空のプロジェクトを使用 作成したいのはVBなどから呼び出せるWin32DLLです。 他のホームページを参考にして以下のようなファイルを作成し ビルド->コンパイルしたところdllファイルはできましたが AccessVBAから参照設定ができませんでした。 どこを修正すればよいか教えてください。 <dlltest.cpp> #define EX __declspec (dllexport) #include <iostream> #include <windows.h> EX int fnWindowHook(void); BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call){ case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } EX int hundred(){ return 100; } <dlltest.def> LIBRARY "dlltest1" EXPORTS disp @1

  • VC++アプリケーションフォームにDLLをリンク

    単純なC++などは適当に使えるのですが、マルチスレッドのプログラムについては初心者です。 VC++2010ExpressEditionのアプリケーションフォームを用いて ボタンを押すと、テキストに入力した数値をDLLの関数に送り、その計算結果を、ラベルに表示する、という単純なプログラムを作成しています。 DLLを利用しないで、Form1内に計算式を作った場合には、正常に動かすことができます。 しかし、DLLの関数を利用する方法がわかりません。 DLLを呼び出すようにプログラムを書いても、ビルドするとエラーが出ます。 インターネット上を30時間位いろいろ調べて試したのですが、分かりませんでした。 もう限界になりましたので、ここに投稿しました。 解決方法を教えて頂けますよう、お願い致します。 DLLは下記のような単純なもので、Sample.cppとSample.defで構成されています。 //+--- Sample.cpp ---+ #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers #include <windows.h> #include <stdlib.h> #include <stdio.h> //---- #define ABC_EXPFUNC __declspec(dllexport) //+------------------------------------------------------------------+ BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved) { //---- switch(ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } //---- return(TRUE); } //+------------------------------------------------------------------+ ABC_EXPFUNC double __stdcall SecretFunc(double a, double b) { double c = a + b; return(c); } //+--- Sample.def ---+ LIBRARY Sample EXPORTS SecretFunc

  • EXE1→DLL→EXE2数値を受け渡す方法

    C++プログラムの初級者です。 EXE1の数値をDLLの関数Func1に渡し、そこで計算した結果を関数Func2でEXE2に送るプログラムを作成しています。 下記のようなDLLのコードを作成したのですが、うまく数値を受け渡すことが出来ません。 調べてみると、EXE1⇔DLLとEXE2⇔DLLとは、アドレス空間が別なので、DLLのStatic変数を共有できないようです。 EXE1⇔DLL と EXE2⇔DLL の1対1では数値受け渡しは、正常に動作しています。 具体的に、DLLにどのようなコードを書けば、数値を受け渡すことができるのでしょうか? ご指導よろしくお願いします。 VC++2010ExpressEdition で作成しています。 <DLLのソースコード> ---------------------- #define WIN32_LEAN_AND_MEAN #include <windows.h> #include <stdlib.h> #include <stdio.h> #include <iostream> static double aa, bb; __declspec(dllexport) double __stdcall Func1(double a1, double b1) { aa = a1*2; return (double)(aa); } __declspec(dllexport) double __stdcall Func2(double a2, double b2) { return (double)(aa); } BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved) { //---- switch(ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } //---- return(TRUE); }

  • シンボルをエクスポートするDLLの初歩的トラブル

    VC++6.0で簡単なDLL作成にチャレンジしたところ、ソースファイルの最後のところで、エンドオブファイルのエラーが出ます。教本と同じように書いたつもりですが、何処が異なっているのか分かりません。エラーを出す原因となっている箇所を御指摘下さい。 ↓ソースファイル #include "stdafx.h" #include "SUB.h" BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } SUB_API LONG _stdcall subtract( LONG sub1 , LONG sub2 ) { return( sub1 - sub2 ); } ↓ここからはヘッダーファイル #ifdef SUB_EXPORTS #define SUB_API __declspec(dllexport) #else #define SUB_API __declspec(dllimport) #endif #ifdef __cplusplus extern "C" { #endif SUB_API LONG __stdcall subtract( LONG sub1, LONG sub2 ); #ifdef _cplusplus } #endif --------------------構成: SUB - Win32 Debug-------------------- コンパイル中... StdAfx.cpp コンパイル中... SUB.cpp C:\Program Files\Microsoft Visual Studio\MyProjects\SUB\SUB.cpp(38) : error C2059: 構文エラー : 'end of file' cl.exe の実行エラー SUB.dll - エラー 1、警告 0

  • DLLにおいて、最後のプロセスデタッチだと判断する方法

    WindowsNT 4.0、VC++ 5.0 を使っています。 マルチプロセスに対応するDLLにおいて、DllMain()の デタッチ(DLL_PROCESS_DETACH)処理で、「これが最後の プロセスだ」と判断する方法はないでしょうか。 共有データとしてカウンタを持って、アタッチ、デタッチで 加減算しようと考えましたが、あるプロセスがアクセス違反などで 落ちたり、タスクマネージャなどから強制終了させられると デタッチルーチンは動作しないので、駄目だと気付きました。 何かいい方法などがありましたら、ご教授願います。

  • ローカルディスク(C)内のwinndows フォルダに放り込む

    ローカルディスク(C)内のwinndowsフォルダにシステムディレクトリへコピーしてください。 マイコンピュター開く、フォルダ クリック、ローカルディスク(C) クリック。winndows クリック、フォルダを作りここにbs dllを放り込む。が しかし、RSSを起動しエクセルのオプションシートを開く、4本値をクリックすると。フォルダが見つかりません、bs dllの と コンピュ田ーが答えます、どのようにすればよいか教えてください。

  • C++製DLLにてVB.NET関数を引数付きでコールバックしたい。

    C++製DLLにてVB.NET関数を引数付きでコールバックしたい。 以下のようなソリューションがあります。 ソリューションには、VB.NETによるプロジェクトapp、C++によるプロジェクトdllがあり、 名前のとおり、appはWindowsフォームアプリケーション、dllはクラスライブラリです。 *** VisualStudio.NET 2003 ソリューション *** === VB.NETプロジェクト:app.exe === --- Module1.vb --- Module Module1 Delegate Function _t() As Int32 <System.Runtime.InteropServices.DllImport("dll.dll")> Public Function dllfunc(ByVal lpFunc As _t) As Int32 End Function End Module --- Form1.vb --- Public Class Form1 Inherits Form Private button1 As Button Public Sub New() button1 = New Button button1.Parent = Me : button1.Text = "button1" AddHandler button1.Click, AddressOf MyClass.GetEvent End Sub Private Sub GetEvent(ByVal sender As Object, ByVal e As EventArgs) dllfunc(AddressOf func1) End Sub Public Function func1() As Int32 MsgBox("func1@vb.net") Return 123 End Function End Class === C++ライブラリプロジェクト:dll.dll === --- dll.def --- LIBRARY dll EXPORTS dllfunc --- dll.h --- #ifdef DLL_EXPORTS #define DLL_API __declspec(dllexport) #else #define DLL_API __declspec(dllimport) #endif DLL_API void dllfunc(int* vbfunc(void)); -- dll.cpp --- #include "stdafx.h" #include "dll.h" #include "stdio.h" #include "windows.h" BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return true; } DLL_API void dllfunc(int* vbfunc(void)) { char str[16]; sprintf(str,"vbfunc() = %d",vbfunc()); MessageBoxA(NULL,str,"dll",MB_OK); } --- stdafx.cpp, stdafx.h --- (省略) *** ソリューション ここまで *** [ 動作 ] appを実行すると、Form1にbutton1が生成される。 button1をクリックするとGetEventが呼ばれ、func1のアドレスを引数としたdllfunc()を呼びます。 dll側のdllfunc()から、app側のfunc1()を呼び、戻り値の123を表示します。 [ 質問 ] dllfunc()から引数付きでfunc1()を呼びたいが、記述の方法が分かりません。 ご教示お願い致します。

  • ローカルディスク(C:)に関して

    こんにちは。 説明下手な為、分かりにくいかと思いますがどうぞよろしくお願いします。 先日PCを立ち上げた所ウイルス報告(avast)があった為、それを削除した所、ローカルディスクを開く際に問題が発生しました。 普段であれば 「マイコンピュータ」→「ローカルディスク」→複数のフォルダ表示 ダブルクリックをするとこの流れだったのですが、ウイルス削除後は 「マイコンピュータ」→「ローカルディスク」→「ファイルを開くプログラムの選択」 になってしまいました。 アドレスで、「C:」を選択すると複数のフォルダは表示されるので、消えてるわけではないのですが・・・。 前のようにローカルディスクから複数あるフォルダへ行くには、何処でどの様な設定をすればいいのでしょうか? よろしくお願いします。

  • テキストドキュメントやファイルフォルダの削除

    「ローカルディスクC」中のWINDOWSに、様々なテキストドキュメントや$NtUnistallkKB975558というようなファイルフォルダなる物がたくさんたまってきています。 そこで質問なのですが、 (1)様々なテキストドキュメント (2)$NtUnistallkKB975558というようなファイルフォルダ は削除してもいいものなのか、と言うことを番号別に教えて頂けるとありがたいです。 どうかよろしくお願い致します。

  • 拡張子をC windowsにディレクトコピー

    ローカルディスク(C)のwinndowsをクリック、フォルダーを作成しbs.dllをコピーしたが、楽天証券のRSSのエクセルの関数が動きません、まえのP Cのbs。dllはCwindowsにありましたが、今あるところはC:\Usersです、これをどのようにしたらCwindowsに変更できますか?よろしくお願いします、ウィンドウズ7です。