• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Keine Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

FFFTPのソースコードです。


Commit MetaInfo

Revision804aaf37a565845cab19b37f3f17fbf8c0b8436d (tree)
Zeit2014-06-21 15:01:48
Autors_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Add workarounds for Windows 2000/XP.

Ändern Zusammenfassung

Diff

--- a/FFFTP.vc80ee.vcproj
+++ b/FFFTP.vc80ee.vcproj
@@ -416,6 +416,10 @@
416416 >
417417 </File>
418418 <File
419+ RelativePath=".\apiemulator.c"
420+ >
421+ </File>
422+ <File
419423 RelativePath=".\bookmark.c"
420424 >
421425 </File>
@@ -601,6 +605,10 @@
601605 Filter="h;hpp;hxx;hm;inl;fi;fd"
602606 >
603607 <File
608+ RelativePath=".\apiemulator.h"
609+ >
610+ </File>
611+ <File
604612 RelativePath=".\common.h"
605613 >
606614 </File>
--- a/FFFTP.vc90.vcproj
+++ b/FFFTP.vc90.vcproj
@@ -413,6 +413,10 @@
413413 >
414414 </File>
415415 <File
416+ RelativePath=".\apiemulator.c"
417+ >
418+ </File>
419+ <File
416420 RelativePath=".\bookmark.c"
417421 >
418422 </File>
@@ -574,6 +578,10 @@
574578 Filter="h;hpp;hxx;hm;inl;fi;fd"
575579 >
576580 <File
581+ RelativePath=".\apiemulator.h"
582+ >
583+ </File>
584+ <File
577585 RelativePath=".\common.h"
578586 >
579587 </File>
--- a/FFFTP.vcproj
+++ b/FFFTP.vcproj
@@ -416,6 +416,10 @@
416416 >
417417 </File>
418418 <File
419+ RelativePath=".\apiemulator.c"
420+ >
421+ </File>
422+ <File
419423 RelativePath=".\bookmark.c"
420424 >
421425 </File>
@@ -581,6 +585,10 @@
581585 Filter="h;hpp;hxx;hm;inl;fi;fd"
582586 >
583587 <File
588+ RelativePath=".\apiemulator.h"
589+ >
590+ </File>
591+ <File
584592 RelativePath=".\common.h"
585593 >
586594 </File>
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
--- a/FFFTP_English.vc80ee.vcproj
+++ b/FFFTP_English.vc80ee.vcproj
@@ -416,6 +416,10 @@
416416 >
417417 </File>
418418 <File
419+ RelativePath=".\apiemulator.c"
420+ >
421+ </File>
422+ <File
419423 RelativePath=".\bookmark.c"
420424 >
421425 </File>
@@ -597,6 +601,10 @@
597601 Filter="h;hpp;hxx;hm;inl"
598602 >
599603 <File
604+ RelativePath=".\apiemulator.h"
605+ >
606+ </File>
607+ <File
600608 RelativePath=".\common.h"
601609 >
602610 </File>
--- a/FFFTP_English.vc90.vcproj
+++ b/FFFTP_English.vc90.vcproj
@@ -413,6 +413,10 @@
413413 >
414414 </File>
415415 <File
416+ RelativePath=".\apiemulator.c"
417+ >
418+ </File>
419+ <File
416420 RelativePath=".\bookmark.c"
417421 >
418422 </File>
@@ -574,6 +578,10 @@
574578 Filter="h;hpp;hxx;hm;inl"
575579 >
576580 <File
581+ RelativePath=".\apiemulator.h"
582+ >
583+ </File>
584+ <File
577585 RelativePath=".\common.h"
578586 >
579587 </File>
--- a/FFFTP_English.vcproj
+++ b/FFFTP_English.vcproj
@@ -416,6 +416,10 @@
416416 >
417417 </File>
418418 <File
419+ RelativePath=".\apiemulator.c"
420+ >
421+ </File>
422+ <File
419423 RelativePath=".\bookmark.c"
420424 >
421425 </File>
@@ -577,6 +581,10 @@
577581 Filter="h;hpp;hxx;hm;inl"
578582 >
579583 <File
584+ RelativePath=".\apiemulator.h"
585+ >
586+ </File>
587+ <File
580588 RelativePath=".\common.h"
581589 >
582590 </File>
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/config.h
+++ b/config.h
@@ -27,4 +27,6 @@
2727 #include "socketwrapper.h"
2828 // プロセスをDLL Injectionから保護する
2929 #include "protectprocess.h"
30+// 一部のWin32 APIのエミュレーションを行う
31+#include "apiemulator.h"
3032
--- a/updater.c
+++ b/updater.c
@@ -15,6 +15,7 @@ typedef SOCKADDR_STORAGE *PSOCKADDR_STORAGE, FAR *LPSOCKADDR_STORAGE;
1515 #include "socketwrapper.h"
1616 #include "protectprocess.h"
1717 #include "mbswrapper.h"
18+#include "apiemulator.h"
1819
1920 typedef struct
2021 {
@@ -541,7 +542,10 @@ BOOL RestartUpdateProcessAsAdministrator(LPCTSTR CommandLine, LPCTSTR Keyword)
541542 memset(&Info, 0, sizeof(SHELLEXECUTEINFO));
542543 Info.cbSize = sizeof(SHELLEXECUTEINFO);
543544 Info.fMask = SEE_MASK_NOCLOSEPROCESS;
544- Info.lpVerb = _T("runas");
545+ if(IsUserAnAdmin())
546+ Info.lpVerb = _T("open");
547+ else
548+ Info.lpVerb = _T("runas");
545549 Info.lpFile = Path;
546550 Info.lpParameters = NewCommandLine;
547551 Info.nShow = SW_SHOW;